view nykyaeka/font.pl @ 67:cf85b8c08214

Added tag rel-1_96 for changeset 1bd4e39c600b
author Matti Hamalainen <ccr@tnsp.org>
date Thu, 24 May 2012 23:46:53 +0300
parents acb5694e93d9
children
line wrap: on
line source

#!/usr/bin/perl

sub encode_font()
{
   @lines=split("\n",$_[0]);
   $widths="";
   $offsets="";
   $crroff=0;
   for($i=0;$i<$#lines;$i+=8)
   {
      $byte=0;
      $x=0;
      do
      {
         $byte=0;
         for($j=0;$j<8;$j++)
         {
            if(substr($lines[$i+$j],$x,1) eq 'a') { $byte |= (1<<$j); }
         }
         if($byte!=0)
         {
            printf("0x%x,",$byte);
            $crroff++;
         }
         $x++;
      } while($byte!=0);
      $lengths.=sprintf("%d,",$x);
      print "0x00,\n";
   }
}

print "unsigned char font[]={\n";
&encode_font(<<EOD);
...
...
...
...
...
...
...

.aaaaa
.a..aa
.a..aa
aaaaaa
aa..aa
aa..aa
aa..aa

aaaaa.
aa..a.
aa..a.
aaaaaa
aa...a
aa...a
aaaaaa

.aaaaa
.a....
.a....
aa....
aa....
aa....
aaaaaa

aaaaa.
a...a.
a...a.
a...aa
a...aa
a...aa
aaaaaa

.aaaaa
.a....
.a....
aaaa..
aa....
aa....
aaaaaa

.aaaaa
.a....
.a....
aaaa..
aa....
aa....
aa....

.aaaaa
.a....
.a....
aa..aa
aa..aa
aa...a
aaaaaa

.a..aa
.a..aa
.a..aa
aaaaaa
aa..aa
aa..aa
aa..aa

.a
.a
.a
aa
aa
aa
aa

....a
....a
....a
...aa
...aa
aa.aa
aaaaa

a...aaa
a..aa..
a.aa...
aaaa...
aa.aa..
aa..aaa
aa..aaa

.a....
.a....
.a....
aa....
aa....
aa....
aaaaaa

.aaaaaaa
.a..a.aa
.a..a.aa
aa.aa.aa
aa.aa.aa
aa.aa.aa
aa.aa.aa

.aaaaa
.a..aa
.a..aa
aa..aa
aa..aa
aa..aa
aa..aa

.aaaaa
.a...a
.a...a
aa...a
aa...a
aa...a
aaaaaa

aaaaaa
a....a
a....a
aaaaaa
aa....
aa....
aa....

.aaaaa
.a...a
.a...a
aa...a
aa.aaa
aa..aa
aaaaaa

.aaaaa
.a....
.a....
aa....
aa....
aa....
aa....

.aaaaa
.a....
.a....
.aaaaa
....aa
....aa
aaaaaa

aaaaaa
...a..
...a..
..aa..
..aa..
..aa..
..aa..

a...aa
a...aa
a...aa
aa..aa
aa..aa
aa..aa
aaaaaa

aa..aa
aa..aa
aa..aa
aa..aa
.aa.a.
.aa.a.
.aaaa.

aa.aa.aa
aa.aa.aa
aa.aa.aa
aa.aa.aa
.a.aa.a.
.a.aa.a.
.aaaaaa.

aa..aaaa
aa..a...
aa..a...
aaaaaaaa
...aa..a
...aa..a
aaaaa..a

aa...a
aa...a
aa...a
aaaaaa
....aa
....aa
aaaaaa

aaaaaa
.....a
.....a
aaaaaa
aa....
aa....
aaaaaa

aa.aa.
......
aaaaa.
aa..a.
aaaaaa
aa..aa
aa..aa

.aa.aa 
......
.aaaaa
.a..aa
aa..aa
aa..aa
aaaaaa

....
....
....
aaaa
..aa
....
....
EOD
print "};\n\nchar font_lengths[]={$lengths};\n\n";