1 - Integrate pdf-tools.cc with the rest of the code
2 - What if an input page specifies /Rotate?
5 | # Position bbox on a new paper
7 | paper(w=210mm,h=297mm,pos=(t|b|c)(l|r|c))
9 | # Scale paper to a new size
11 | scaleto(w=210mm,h=297mm,pos=tl)
13 | # Fit image to a paper
14 | # If paper is given: scale image
15 | # If no paper is given: adjust paper to image + margins
18 | margin= hmargin= vmargin=
19 | lmargin= rmargin= tmargin= bmargin=
24 | expand(h=10mm, v=20mm)
25 | expand(l=10mm, r=10mm, t=10mm, b=10mm)
27 | # Adjust image size (in terms of margins around)
28 | margins ... params like expand
31 | mark=box # Box around image
32 | mark=cross # Crosses in the corners
33 | mark=out # Out-pointing half-crosses in the corners (default)
34 | mark=in # In-pointing half-crosses
35 | mark=bg # Colored background
36 | pen=1pt # Line width
37 | len=5mm # Cross arm length
38 | offset=5mm # Distance from border
46 | bleed=5mm # Allow bleeding over the image box
48 # Can be written as: mix(cat) { modulo(2){1}, modulo(2){2} }
57 | # Add an empty page after the current one
63 | # - paper size + margins
66 | by=rows/cols # Filling order (default: rows)
67 | by=tile # Tile with copies of a single page
68 | paper / w / h # Specify paper size, default=copy from 1st image
69 | + fit options (*margin, pos)
70 | tpos=... # Position of images inside their tiles (default: tl)
71 | crop # Crop to image
72 | mixed # Allow images of different sizes
73 | rotate=1 # Override rotation decision
74 | scale=1 # Override scaling factor
75 | hspace / vspace / space # Distance between tiles
76 | cmark, cpen, clen, coffset, ccolor # Cropmark parameters
78 # Send pages to multiple pipes and merge their results
80 cat # Concatenate results (default is interleave)
81 cycle # When one pipe ends earlier, cycle it from start
82 pad # When one pipe ends earlier, add blank pages