chiark / gitweb /
number the registration tick marks
authorian <ian>
Sun, 29 Mar 2009 19:44:32 +0000 (19:44 +0000)
committerian <ian>
Sun, 29 Mar 2009 19:44:32 +0000 (19:44 +0000)
layout/layout

index 1f58a19dfe1605877cf6906b6e5cd44764054b13..bf38960f2bffb418920a9aac95618039b65ec2c3 100755 (executable)
@@ -1835,19 +1835,30 @@ while (<>) {
     o($bboxstr) or die $!;
 
     if ($scale < 1.5) {
-       my ($tick_x, $tick_y, $ticklen);
+       my ($tick_x, $tick_y, $ticklen, $ticki_x, $ticki_y, $s);
        $ticklen= 10;
        o(sprintf
          "    gsave 0.5 setgray 0.33 setlinewidth\n".
+         "      /Courier-New findfont 9 scalefont setfont\n".
          "      /regmark {\n".
          "        newpath moveto\n".
+         "        gsave\n".
+         "          dup stringwidth pop -0.5 mul  3  rmoveto\n".
+         "          show grestore\n".
          "        -%d 0 rmoveto %d 0 rlineto\n".
          "        -%d -%d rmoveto 0 %d rlineto stroke\n".
          "      } def\n",
-         $ticklen, $ticklen*2, $ticklen, $ticklen, $ticklen*2);
-       for ($tick_x= $min_x - 300; $tick_x < $max_x + 300; $tick_x += 50) {
-           for ($tick_y= $min_y - 300; $tick_y < $max_y + 300; $tick_y += 50) {
-               o(sprintf "      %f %f regmark\n", $tick_x, $tick_y);
+         $ticklen, $ticklen*2, $ticklen, $ticklen, $ticklen*2, $ticklen);
+       for ($tick_x= $min_x-300, $ticki_x=0;
+            $tick_x < $max_x+300;
+            $tick_x += 50, $ticki_x++) {
+           for ($tick_y= $min_y-300, $ticki_y=0;
+                $tick_y < $max_y+300;
+                $tick_y += 50, $ticki_y++) {
+               $s= ($ticki_x&1 or $ticki_y&1) ? '' :
+                   sprintf "%3d %-3d", $ticki_x/2, $ticki_y/2;
+               o(sprintf "      (%s) %f %f regmark\n",
+                 $s, $tick_x, $tick_y);
            }
        }
        o("    grestore\n");