#!/usr/local/bin/perl require 'jcode.pl'; $charsize = 16; $bitmap = 0; $pixel = 0; $sum = 0; while (<>) { if (/STARTCHAR (....)/) { $code = $1; print "code $code "; } if (/BITMAP/) { $bitmap = 1; } if ($bitmap) { if (!/ENDCHAR/) { chop $_; if (/([0-9A-F])([0-9A-F])([0-9A-F])([0-9A-F])/) { # print "\nbitmap = $_\n"; # print "$1, $2, $3, $4\n"; $hex1 = hex($1); $hex2 = hex($2); $hex3 = hex($3); $hex4 = hex($4); # print "$hex1, $hex2, $hex3, $hex4\n"; foreach $hexchar ($hex1, $hex2, $hex3, $hex4) { $bit3 = vec(pack("C",$hexchar),3,1); $bit2 = vec(pack("C",$hexchar),2,1); $bit1 = vec(pack("C",$hexchar),1,1); $bit0 = vec(pack("C",$hexchar),0,1); # print "$bit3$bit2$bit1$bit0|"; $sum += $bit3 + $bit2 + $bit1 + $bit0; } # print "\nsum = $sum\n"; } } else { if ($code =~ /(..)(..)/) { $byte1 = pack("C", hex($1) + 128); $byte2 = pack("C", hex($2) + 128); print "dot $sum $byte1$byte2\n"; } $bitmap = 0; $pixel = 0; $sum = 0; } } }