chiark / gitweb /
break out $somepage
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Wed, 6 Mar 2019 23:35:07 +0000 (23:35 +0000)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Wed, 6 Mar 2019 23:35:07 +0000 (23:35 +0000)
generate-board

index 7f32b11cff562aa773401e5cf2bbfb81e458c4d7..d79b35582bdd532b229084846a7e528c964cd964 100755 (executable)
@@ -313,13 +313,22 @@ sub computeboundings() {
       $p[3] - $max_printeredge ];
   };
   $bb{PrintableB} = $page2minprintable->($bb{PageB});
-  my $mt_offset = $bb{PrintableB}[3] - $max_printeredge;
-  $bb{PageMT} = [ 0, $mt_offset, $a4_h, $mt_offset + $a3_h ];
-  $bb{PrintableMT} = $page2minprintable->($bb{PageMT});
-  $bb{PrintableAll} = [
-                     @{ $bb{PrintableB} }[0..1],
-                     @{ $bb{PrintableMT} }[2..3],
-                    ];
+  my $somepage = sub {
+    my $id = shift @_;
+    $bb{"Page$id"} = [ @_ ];
+    $bb{"Printable$id"} = $page2minprintable->($bb{"Page$id"});
+  };
+  if ($maxpaper eq 'a3') {
+    my $mt_offset = $bb{PrintableB}[3] - $max_printeredge;
+    $somepage->('MT', 0, $mt_offset, $a4_h, $mt_offset + $a3_h );
+    $bb{PrintableAll} = [
+                        @{ $bb{PrintableB} }[0..1],
+                        @{ $bb{PrintableMT} }[2..3],
+                       ];
+  } elsif ($maxpaper eq 'a4') {
+  } else {
+    confess;
+  }
 }
 
 sub showboundings () {