]> mj.ucw.cz Git - paperjam.git/blob - TODO
Partial nup
[paperjam.git] / TODO
1 - Integrate pdf-tools.cc with the rest of the code
2 - What if an input page specifies /Rotate?
3 - Better error messages from instantiation
4 - page->index: use or remove
5 - rename page->bbox to page->image_box?
6 - "-f" switch
7
8 | # Position bbox on a new paper
9 | paper("a4")
10 | paper(w=210mm,h=297mm,pos=(t|b|c)(l|r|c))
11
12 | # Scale paper to a new size
13 | scaleto("a4")
14 | scaleto(w=210mm,h=297mm,pos=tl)
15
16 | # Fit image to a paper
17 | # If paper is given: scale image
18 | # If no paper is given: adjust paper to image + margins
19 | fit("a4")
20 | fit(w=, h=)
21 | margin= hmargin= vmargin=
22 | lmargin= rmargin= tmargin= bmargin=
23 | pos=
24
25 | # Adjust paper size
26 | expand(10mm)
27 | expand(h=10mm, v=20mm)
28 | expand(l=10mm, r=10mm, t=10mm, b=10mm)
29
30 | # Adjust image size (in terms of margins around)
31 | margins ... params like expand
32
33 cropmarks
34         mark=box        # Box around image
35         mark=cross      # Crosses in the corners
36         mark=out        # Out-pointing half-crosses in the corners (default)
37         mark=in         # In-pointing half-crosses
38         pen=1pt         # Line width
39         len=5mm         # Cross arm length
40         dist=5mm        # Distance from border
41
42 | book
43 |       signature=<n>
44
45 # Crop to image box
46 crop
47         bleed=5mm       # Allow bleeding over the image box
48
49 # Can be written as: mix(cat) { modulo(2){1}, modulo(2){2} }
50 duplex
51         long-edge
52
53 | merge
54
55 | modulo
56 |       half
57
58 | # Add an empty page after the current one
59 | add-blank
60 |       n=
61 |       paper...
62
63 # Set either:
64 #       - paper size + margins
65 #       - scale + margins
66 nup(hnum, vnum)
67         by=rows/cols    # Filling order (default: rows)
68         by=tile         # Tile with copies of a single page
69         paper / w / h   # Specify paper size, default=copy from 1st image
70         + fit options (*margin, pos)
71         crop            # Crop to image
72         rotate=1        # Override rotation decision
73         scale=1         # Override scaling factor
74         hspace / vspace / space # Distance between tiles
75         + cropmarks?
76
77 # Send pages to multiple pipes and merge their results
78 mix { ..., ..., ...}
79         cat             # Concatenate results (default is interleave)
80         cycle           # When one pipe ends earlier, cycle it from start
81         pad             # When one pipe ends earlier, add blank pages