1
2
3
4
5
6
7
8
9
10
11
12
13
14if known context_crop : endinput ; fi ;
15
16boolean context_crop ; context_crop := true ;
17
18vardef crop_marks_lines (expr box, len, offset, nx, ny, boxtoo) =
19 save p ; picture p ; save w, h, x, y ; numeric w, h, x, y ;
20 p := image (
21 x := if nx = 0 : 1 else : nx 1 fi ;
22 y := if ny = 0 : 1 else : ny 1 fi ;
23 w := bbwidth (box) x ;
24 h := bbheight(box) y ;
25 for i=0 upto y :
26 draw ((llcorner box) -- (llcorner box) shifted (len,0)) shifted (offset,ih) ;
27 draw ((lrcorner box) -- (lrcorner box) shifted ( len,0)) shifted ( offset,ih) ;
28 endfor ;
29 for i=0 upto x :
30 draw ((llcorner box) -- (llcorner box) shifted (0,len)) shifted (iw,offset) ;
31 draw ((ulcorner box) -- (ulcorner box) shifted (0, len)) shifted (iw, offset) ;
32 endfor ;
33 if boxtoo :
34 for i=0 upto x-1 :
35 for j=0 upto y-1 :
36 draw box enlarged 18 shifted (iw,jh) dashed evenly withpen pencircle scaled 14 ;
37 endfor ;
38 endfor ;
39 fi ;
40 ) ;
41 setbounds p to box ;
42 p
43enddef ;
44
45vardef crop_marks_cmyk =
46 pickup pencircle scaled 12 ;
47 save p ; picture p ; p := image (
48 fill ulcircle scaled 12.5 withcolor (1,0,0,0) ;
49 fill urcircle scaled 12.5 withcolor (0,1,0,0) ;
50 fill lrcircle scaled 12.5 withcolor (0,0,1,0) ;
51 fill llcircle scaled 12.5 withcolor (0,0,0,1) ;
52 draw (-10,0) -- (10,0) ;
53 draw (0,-10) -- (0,10) ;
54 draw fullcircle scaled 12.5 ;
55 ) ;
56 setbounds p to fullsquare scaled 20 ;
57 p
58enddef ;
59
60vardef crop_marks_gray =
61 save p ; picture p ; p := image (
62 fill ulcircle scaled 12.5 withcolor (0.00) ;
63 fill urcircle scaled 12.5 withcolor (0.25) ;
64 fill lrcircle scaled 12.5 withcolor (0.50) ;
65 fill llcircle scaled 12.5 withcolor (0.75) ;
66 draw (-10,0) -- (10,0) ;
67 draw (0,-10) -- (0,10) ;
68 draw (-6,0) -- (6,0) withcolor white ;
69 draw (0,-6) -- (0,6) withcolor white ;
70 draw fullcircle scaled 12.5 ;
71 ) ;
72 setbounds p to fullsquare scaled 20 ;
73 p
74enddef ;
75
76vardef crop_marks_cmykrgb =
77 save p ; picture p ; p := image (
78 fill ulcircle scaled 15 withcolor (1,0,0) ;
79 fill urcircle scaled 15 withcolor (0,1,0) ;
80 fill lrcircle scaled 15 withcolor (0,0,1) ;
81 fill llcircle scaled 15 withcolor (.5,.5,.5) ;
82 fill ulcircle scaled 10 withcolor (1,0,0,0) ;
83 fill urcircle scaled 10 withcolor (0,1,0,0) ;
84 fill lrcircle scaled 10 withcolor (0,0,1,0) ;
85 fill llcircle scaled 10 withcolor (0,0,0,1) ;
86 draw (-10,0) -- (10,0) ;
87 draw (0,-10) -- (0,10) ;
88 draw fullcircle scaled 10 ;
89 draw fullcircle scaled 15 ;
90 ) ;
91 setbounds p to fullsquare scaled 20 ;
92 p
93enddef ;
94
95vardef crop_color(expr c, h, w, dx, dy, ts) =
96 image (
97 save p ; path p ;
98 for i=1 upto 6 :
99 p := fullsquare
100 xscaled w
101 yscaled h
102 shifted (dx,dyih) ;
103 fill p
104 withcolor (crop_colors[i]c) ;
105 draw textext("\format{'@0.2f'," & decimal crop_colors[i] & "}")
106 scaled ts
107 shifted center p withcolor white ;
108 endfor ;
109 )
110enddef ;
111
112vardef crop_gray(expr c, h, w, dx, dy, ts) =
113 image (
114 save p ; path p ;
115 for i=.05 step .05 until 1 :
116 p := fullsquare
117 xscaled w
118 yscaled h
119 shifted (20(i-1)wdx,dy) ;
120 fill p
121 withcolor (ic) ;
122 draw textext("\format{'@0.2f'," & decimal i & "}")
123 scaled ts
124 shifted center p withcolor white ;
125 endfor ;
126 )
127enddef ;
128
129
130
131
132
133
134def page_marks_add_color(expr width, height, length, offset) =
135
136 pickup pencircle scaled 12 ; interim linecap := squared ; interim linejoin := butt ;
137
138 path page ; page := fullsquare xscaled width yscaled height ;
139 path more ; more := page enlarged (offsetlength2,offsetlength2) ;
140
141 numeric crop_colors[] ;
142 crop_colors[1] := 1 ;
143 crop_colors[2] := 0.95 ;
144 crop_colors[3] := 0.75 ;
145 crop_colors[4] := 0.50 ;
146 crop_colors[5] := 0.25 ;
147 crop_colors[6] := 0.05 ;
148
149 numeric h ; h := height 20 ;
150 numeric w ; w := width 20 ;
151 numeric d ; d := offset length2 ;
152
153 draw crop_color((1,0,0,0),h,length,xpart ulcorner page d, 10h,length20) ;
154 draw crop_color((0,1,0,0),h,length,xpart ulcorner page d,3.5h,length20) ;
155 draw crop_color((0,0,1,0),h,length,xpart ulcorner page d, -3h,length20) ;
156
157 draw crop_color((0,1,1,0),h,length,xpart urcorner page d, 10h,length20) ;
158 draw crop_color((1,0,1,0),h,length,xpart urcorner page d,3.5h,length20) ;
159 draw crop_color((1,1,0,0),h,length,xpart urcorner page d, -3h,length20) ;
160
161 draw crop_gray((0,0,0,1),length, w,xpart llcorner page,ypart llcorner page d ,w20) ;
162 draw crop_gray((1,0,0,0),length3,w,xpart llcorner page, ypart llcorner page d 1length3,w20) ;
163 draw crop_gray((0,1,0,0),length3,w,xpart llcorner page, ypart llcorner page d 0length3,w20) ;
164 draw crop_gray((0,0,1,0),length3,w,xpart llcorner page, ypart llcorner page d 1length3,w20) ;
165
166 setbounds currentpicture to page ;
167
168enddef ;
169
170def page_marks_add_marking(expr width, height, length, offset) =
171
172 pickup pencircle scaled 12 ; interim linecap := squared ; interim linejoin := butt ;
173
174 path page ; page := fullsquare xscaled width yscaled height ;
175 path more ; more := page enlarged (offsetlength2,offsetlength2) ;
176
177 draw crop_marks_gray shifted center(topboundary more) shifted (0, offsetlength);
178 draw crop_marks_cmyk shifted center(bottomboundary more) shifted (0,offsetlength);
179
180 setbounds currentpicture to page ;
181
182enddef ;
183
184def page_marks_add_lines(expr width, height, length, offset, nx, ny, boxtoo) =
185
186 pickup pencircle scaled 12 ; interim linecap := squared ; interim linejoin := butt ;
187
188 path page ; page := fullsquare xscaled width yscaled height ;
189 path more ; more := page enlarged (offsetlength2,offsetlength2) ;
190
191 draw crop_marks_lines(page,length,offset,nx,ny,boxtoo) ;
192
193 setbounds currentpicture to page ;
194
195enddef ;
196
197def page_marks_add_number(expr width, height, length, offset, n) =
198
199 pickup pencircle scaled 12 ; interim linecap := squared ; interim linejoin := butt ;
200
201 path page ; page := fullsquare xscaled width yscaled height ;
202 path more ; more := page enlarged (offsetlength2,offsetlength2) ;
203
204 for s=llcorner more, lrcorner more, ulcorner more, urcorner more :
205 draw textext(decimal n) shifted s ;
206 endfor ;
207
208 setbounds currentpicture to page ;
209
210enddef ;
211 |