From: Martin Mares Date: Fri, 2 Sep 2011 15:55:03 +0000 (+0200) Subject: Digit: Cropmarks X-Git-Url: http://mj.ucw.cz/gitweb/?a=commitdiff_plain;h=9e2f53a0251f7fe402c8be4ce22aa5b10d1d0675;p=misc.git Digit: Cropmarks --- diff --git a/ucw/draw-digit-multi b/ucw/draw-digit-multi index 243bda5..ca43aa0 100755 --- a/ucw/draw-digit-multi +++ b/ucw/draw-digit-multi @@ -5,7 +5,7 @@ use warnings; use Cairo; -my $u = 72/4; +my $u = 72/2.5; my $mi = 72/25.4; my $pw = 210*$mi; my $ph = 297*$mi; @@ -17,6 +17,19 @@ $c->set_line_width(2); $c->set_line_cap('round'); $c->set_source_rgb(0, 0, 0); +sub cross($$) { + my ($x,$y) = @_; + $c->save; + $c->set_line_width(0.5); + $c->move_to($x-.5*$u, $y); + $c->line_to($x+.5*$u, $y); + $c->stroke; + $c->move_to($x, $y-.5*$u); + $c->line_to($x, $y+.5*$u); + $c->stroke; + $c->restore; +} + my $xp = $u; my $yp = $u; while (<>) { @@ -25,6 +38,10 @@ while (<>) { my @r = split /\s+/; @r == 5 or next; + cross($xp, $yp); + cross($xp+6*$u, $yp); + cross($xp, $yp+6*$u); + cross($xp+6*$u, $yp+6*$u); for my $r (@r) { my ($x1,$y1,$x2,$y2) = $r =~ /^\((\d+),(\d+)\)-\((\d+),(\d+)\)$/ or die; $c->move_to($xp + (.9*$x1+.1*$x2)*$u, $yp + (.9*$y1+.1*$y2)*$u); @@ -32,10 +49,10 @@ while (<>) { $c->stroke; } - $xp += 5*$u; + $xp += 6*$u; if ($xp + 5*$u > $pw) { $xp = $u; - $yp += 5*$u; + $yp += 6*$u; if ($yp + 5*$u > $ph) { $c->show_page; $yp = $u;