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