File: dumpfont.pl

package info (click to toggle)
yudit 3.1.0-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, forky, sid, trixie
  • size: 18,472 kB
  • sloc: cpp: 76,344; perl: 5,630; makefile: 989; ansic: 823; sh: 441
file content (59 lines) | stat: -rwxr-xr-x 1,103 bytes parent folder | download | duplicates (10)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
#!/usr/bin/perl
$SCALE_X = 1.0;
$SCALE_Y = 1.0;
#1. $TRANS_X =  10;
#$TRANS_X = 240;
$TRANS_X = 0;

$TRANS_Y = 0;

while (<>)
{
 if (/\/\S \{ \%/)
 {
  print "SD_BEGIN_GLYPH, /*" . $_ . "*/";
 }
 elsif (/closepath (\S+) (\S+) moveto/)
 {
   $x = $1;
   $y = $2;
   print " SD_CLOSE_PATH,\n";
   print "  SD_MOVE_TO, $x, $y,\n";
 }
 elsif (/(\S+) (\S+) moveto/)
 {
   $x = $1/$SCALE_X+$TRANS_X;
   $y = $2/$SCALE_Y+$TRANS_Y;
   print "  SD_MOVE_TO, $x, $y,\n";
 }
 elsif (/closepath fill/)
 {
   print " SD_CLOSE_PATH,\n";
   print "SD_END_GLYPH,\n";
 }
 elsif (/closepath/)
 {
   print "SD_CLOSE_PATH,\n";
 }
 elsif (/fill/)
 {
   print "  w->stroke ();\n";
 }
 elsif (/(\S+) (\S+) lineto/)
 {
   $x = $1/$SCALE_X+$TRANS_X;
   $y = $2/$SCALE_Y+$TRANS_Y;
   print "  SD_LINE_TO, $x, $y,\n";
 }
 elsif (/(\S+) (\S+) (\S+) (\S+) (\S+) (\S+) curveto/)
 {
   $x1 = $1/$SCALE_X+$TRANS_X;
   $y1 = $2/$SCALE_Y+$TRANS_Y;
   $x2 = $3/$SCALE_X+$TRANS_X;
   $y2 = $4/$SCALE_Y+$TRANS_Y;
   $x3 = $5/$SCALE_X+$TRANS_X;
   $y3 = $6/$SCALE_Y+$TRANS_Y;
   print "  SD_CURVE_TO, $x1, $y1, $x2, $y2, $x3, $y3,\n";
 }
 
}