diff options
Diffstat (limited to 'lfrecord.py')
-rw-r--r-- | lfrecord.py | 863 |
1 files changed, 863 insertions, 0 deletions
diff --git a/lfrecord.py b/lfrecord.py new file mode 100644 index 0000000..b869033 --- /dev/null +++ b/lfrecord.py | |||
@@ -0,0 +1,863 @@ | |||
1 | # ExiFilm -- Add film exposure metadata to EXIF tags of digital images | ||
2 | # Copyright (C) 2009 James E. Blair <corvus@gnu.org> | ||
3 | # | ||
4 | # This program is free software: you can redistribute it and/or modify | ||
5 | # it under the terms of the GNU General Public License as published by | ||
6 | # the Free Software Foundation, either version 3 of the License, or | ||
7 | # (at your option) any later version. | ||
8 | # | ||
9 | # This program is distributed in the hope that it will be useful, | ||
10 | # but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
11 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
12 | # GNU General Public License for more details. | ||
13 | # | ||
14 | # You should have received a copy of the GNU General Public License | ||
15 | # along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
16 | |||
17 | program = """%%!PS-Adobe-3.0 | ||
18 | %%%%Pages: %(pages)s | ||
19 | %%%%BoundingBox: 0 0 612 792 | ||
20 | %%%%EndComments | ||
21 | |||
22 | %% User servicable: | ||
23 | |||
24 | /in { 72 mul } def | ||
25 | |||
26 | /cellheight 12.75 def | ||
27 | %%/plantop 9.75 in def %% 8.5 - .5 in at top | ||
28 | %%/planleft 7 32 div in def | ||
29 | /plantop 10.25 in def %% 8.5 - .5 in at top | ||
30 | /planleft .75 in def | ||
31 | /planwidth 3 in 15 16 div in add def | ||
32 | |||
33 | %% 3 15/16 in wide | ||
34 | %% 5 in high | ||
35 | |||
36 | /bigfont {/Times-Roman 14 selectfont} def | ||
37 | /normalfont {/Times-Roman 12 selectfont} def | ||
38 | /smallfont {/Times-Roman 10 selectfont} def | ||
39 | |||
40 | /baselineskip 12 def | ||
41 | 1 setlinewidth | ||
42 | |||
43 | %% Less so: | ||
44 | |||
45 | /planheight 21 cellheight mul def | ||
46 | /condtop plantop planheight sub def | ||
47 | /condleft planleft def | ||
48 | /condheight 11 cellheight mul def | ||
49 | |||
50 | /cell {/cury curx cury wd cellht box def} def | ||
51 | /cell1 {curx cury wd1 cellht box pop} def | ||
52 | /cell2cr {/cury curx wd1 add cury wd2 cellht box def} def | ||
53 | /cell3cr {/cury curx wd1 add wd2 add cury wd3 cellht box def} def | ||
54 | /cell2 {curx wd1 add cury wd2 cellht box pop} def | ||
55 | /cell3 {curx wd1 add wd2 add cury wd3 cellht box pop} def | ||
56 | /triangle {newpath curx cury moveto 6 0 cellht 2 div sub rlineto | ||
57 | -6 0 cellht 2 div sub rlineto closepath fill} def | ||
58 | |||
59 | |||
60 | /toppic | ||
61 | { | ||
62 | 0 18 translate | ||
63 | 0.8 -0.8 scale | ||
64 | 0 0 0 setrgbcolor | ||
65 | [] 0 setdash | ||
66 | 1 setlinewidth | ||
67 | 0 setlinejoin | ||
68 | 0 setlinecap | ||
69 | gsave [1 0 0 1 0 0] concat | ||
70 | 0 0 0 setrgbcolor | ||
71 | [] 0 setdash | ||
72 | 0.625 setlinewidth | ||
73 | 1 setlinejoin | ||
74 | 1 setlinecap | ||
75 | newpath | ||
76 | 17.465566 7.6270604 moveto | ||
77 | 17.34201 7.4607341 17.023642 7.1667431 16.801411 7.0511098 curveto | ||
78 | 16.503644 6.896187 16.307292 6.8516095 16.026569 6.7055509 curveto | ||
79 | 15.791517 6.5832505 15.419851 6.5327667 15.14103 6.5327667 curveto | ||
80 | 14.851109 6.5327667 14.510791 6.4751688 14.200137 6.4751688 curveto | ||
81 | 13.906717 6.4751688 13.544314 6.6414571 13.314598 6.8207372 curveto | ||
82 | 13.068846 7.0125432 12.874548 7.2361726 12.595099 7.4542762 curveto | ||
83 | 12.344743 7.6496678 12.125565 7.8753705 11.930944 8.1454035 curveto | ||
84 | 11.751845 8.3938944 11.61173 8.7253772 11.543518 9.0093151 curveto | ||
85 | 11.483134 9.2606497 11.432821 9.6008921 11.432821 9.9308246 curveto | ||
86 | 11.432821 10.284991 11.481859 10.646709 11.543518 10.96752 curveto | ||
87 | 11.606347 11.294419 11.689348 11.459357 11.764903 11.773844 curveto | ||
88 | 11.826229 12.029125 12.085382 12.337715 12.207673 12.464971 curveto | ||
89 | 12.411225 12.676797 12.681981 12.913342 12.927172 13.040921 curveto | ||
90 | 13.208038 13.187056 13.356056 13.321654 13.591326 13.444078 curveto | ||
91 | 13.894704 13.60193 14.210656 13.770986 14.532219 13.904833 curveto | ||
92 | 14.799874 14.016243 15.064115 14.020019 15.362414 14.020019 curveto | ||
93 | 15.668037 14.020019 15.886968 14.041942 16.1926 13.962421 curveto | ||
94 | 16.488636 13.885412 16.686938 13.733028 16.912108 13.674451 curveto | ||
95 | 17.175607 13.605906 17.382184 13.372271 17.576263 13.271294 curveto | ||
96 | 17.802565 13.15354 17.966257 13.038239 18.12972 12.868137 curveto | ||
97 | 18.33059 12.659107 18.448373 12.636072 18.517146 12.349785 curveto | ||
98 | 18.58201 12.07978 18.683187 12.005006 18.683187 11.658657 curveto | ||
99 | 18.683187 11.370687 18.683187 11.082707 18.683187 10.794746 curveto | ||
100 | 18.683187 10.482732 18.689036 10.243133 18.627843 9.9884225 curveto | ||
101 | 18.56315 9.7191599 18.57249 9.4050915 18.57249 9.1245109 curveto | ||
102 | 18.57249 8.8389752 18.46301 8.6086787 18.351105 8.3757857 curveto | ||
103 | 18.246685 8.158462 18.001799 8.0698776 17.852991 7.9150309 curveto | ||
104 | 17.675889 7.730729 17.748724 7.7007222 17.465566 7.6270604 curveto | ||
105 | closepath | ||
106 | stroke | ||
107 | 0 0 0 setrgbcolor | ||
108 | [] 0 setdash | ||
109 | 0.625 setlinewidth | ||
110 | 1 setlinejoin | ||
111 | 1 setlinecap | ||
112 | newpath | ||
113 | 18.908969 9.1187484 moveto | ||
114 | 19.132586 9.2148318 19.670178 9.5204546 19.889559 9.6723899 curveto | ||
115 | 20.225854 9.9053021 20.525329 9.9224118 20.835946 10.076851 curveto | ||
116 | 21.210027 10.262847 21.490107 10.364636 21.849811 10.465301 curveto | ||
117 | 22.38606 10.615383 21.920523 10.684453 21.563764 10.76915 curveto | ||
118 | 21.276372 10.837386 20.927903 10.920113 20.619207 10.993399 curveto | ||
119 | 20.270784 11.076118 19.970536 11.147404 19.607192 11.233666 curveto | ||
120 | 19.449759 11.271042 19.292336 11.308417 19.134913 11.345791 curveto | ||
121 | stroke | ||
122 | 0 0 0 setrgbcolor | ||
123 | [] 0 setdash | ||
124 | 0.625 setlinewidth | ||
125 | 1 setlinejoin | ||
126 | 1 setlinecap | ||
127 | newpath | ||
128 | 12.479003 7.3178906 moveto | ||
129 | 12.297483 7.2051594 10.437915 6.743884 10.199405 6.6961819 curveto | ||
130 | 9.9461844 6.6455378 8.2389814 6.412102 8.4897064 6.4371367 curveto | ||
131 | 8.9210134 6.4802021 7.6023054 6.3853275 7.3499064 6.3853275 curveto | ||
132 | 7.1865764 6.3853275 6.6748094 6.3424179 6.2101074 6.3853275 curveto | ||
133 | 5.9802984 6.4065477 4.6730454 6.5580544 4.3967904 6.6961819 curveto | ||
134 | 4.1597714 6.8146914 3.9322444 6.8766459 3.6714644 7.0070363 curveto | ||
135 | 3.3812444 7.1521462 3.1878204 7.2920552 2.9461374 7.4733178 curveto | ||
136 | 2.7386724 7.6289163 2.4671594 7.8455027 2.2726194 7.9914084 curveto | ||
137 | 2.0299164 8.1734353 1.8916084 8.3206101 1.7027194 8.5094989 curveto | ||
138 | 1.5052674 8.706951 1.4151344 8.8256235 1.2882464 9.0793985 curveto | ||
139 | 1.1595274 9.3368386 1.0339524 9.4843697 0.92558337 9.7011073 curveto | ||
140 | 0.78229837 9.9876779 0.64040737 10.116486 0.56292037 10.426434 curveto | ||
141 | 0.50396737 10.662246 0.51591437 10.873501 0.45930237 11.099952 curveto | ||
142 | 0.39136637 11.371693 0.56233537 11.565062 0.66653837 11.77347 curveto | ||
143 | 0.76972037 11.979834 1.0569594 12.231766 1.1846294 12.395178 curveto | ||
144 | 1.4171204 12.692756 1.6462124 12.974507 1.9099554 13.172314 curveto | ||
145 | 2.2042814 13.393059 2.9527384 13.952751 3.2569914 14.104877 curveto | ||
146 | 4.1361764 14.565305 4.7738594 14.88324 5.7438264 14.985631 curveto | ||
147 | 6.1202154 15.079729 7.3525084 15.363749 8.8005604 15.192867 curveto | ||
148 | 9.8815834 15.065298 10.824802 14.750645 11.494631 14.260304 curveto | ||
149 | 12.29744 13.766723 12.403624 13.534597 12.789858 13.120505 curveto | ||
150 | stroke | ||
151 | grestore | ||
152 | } def | ||
153 | |||
154 | /sidepic | ||
155 | { | ||
156 | 0 18 translate | ||
157 | 0.8 -0.8 scale | ||
158 | 0 0 0 setrgbcolor | ||
159 | [] 0 setdash | ||
160 | 1 setlinewidth | ||
161 | 0 setlinejoin | ||
162 | 0 setlinecap | ||
163 | gsave [1 0 0 1 0 0] concat | ||
164 | 0 0 0 setrgbcolor | ||
165 | [] 0 setdash | ||
166 | 0.625 setlinewidth | ||
167 | 1 setlinejoin | ||
168 | 1 setlinecap | ||
169 | newpath | ||
170 | 17.41745 3.3235764 moveto | ||
171 | 17.28754 3.1486964 16.9528 2.8395864 16.71914 2.7180064 curveto | ||
172 | 16.40606 2.5551164 16.19961 2.5082464 15.90445 2.3546764 curveto | ||
173 | 15.65731 2.2260864 15.26653 2.1730064 14.97337 2.1730064 curveto | ||
174 | 14.66854 2.1730064 14.31072 2.1124464 13.98409 2.1124464 curveto | ||
175 | 13.67558 2.1124464 13.29454 2.2872864 13.05301 2.4757864 curveto | ||
176 | 12.79462 2.6774564 12.59033 2.9125864 12.296511 3.1419064 curveto | ||
177 | 12.033281 3.3473464 11.802831 3.5846564 11.598201 3.8685764 curveto | ||
178 | 11.409891 4.1298464 11.262571 4.4783764 11.190851 4.7769164 curveto | ||
179 | 11.127361 5.0411764 11.074461 5.3989164 11.074461 5.7458164 curveto | ||
180 | 11.074461 6.1181964 11.126021 6.4985164 11.190851 6.8358264 curveto | ||
181 | 11.256911 7.1795364 11.344181 7.3529564 11.423621 7.6836164 curveto | ||
182 | 11.488101 7.9520264 11.760581 8.2764864 11.889161 8.4102864 curveto | ||
183 | 12.103181 8.6330064 12.387861 8.8817164 12.64566 9.0158564 curveto | ||
184 | 12.94097 9.1695064 13.0966 9.3110264 13.34397 9.4397464 curveto | ||
185 | 13.66295 9.6057164 13.99515 9.7834664 14.33325 9.9241964 curveto | ||
186 | 14.61467 10.041336 14.8925 10.045306 15.20614 10.045306 curveto | ||
187 | 15.52748 10.045306 15.75767 10.068356 16.07902 9.9847464 curveto | ||
188 | 16.39028 9.9037764 16.59878 9.7435564 16.83553 9.6819664 curveto | ||
189 | 17.11258 9.6098964 17.32978 9.3642464 17.53384 9.2580764 curveto | ||
190 | 17.77178 9.1342664 17.94389 9.0130364 18.11576 8.8341864 curveto | ||
191 | 18.32696 8.6144064 18.4508 8.5901864 18.52311 8.2891764 curveto | ||
192 | 18.59131 8.0052864 18.69769 7.9266664 18.69769 7.5625064 curveto | ||
193 | 18.69769 7.2597264 18.69769 6.9569364 18.69769 6.6541664 curveto | ||
194 | 18.69769 6.3261064 18.70384 6.0741864 18.6395 5.8063764 curveto | ||
195 | 18.57148 5.5232664 18.5813 5.1930464 18.5813 4.8980364 curveto | ||
196 | 18.5813 4.5978164 18.46619 4.3556764 18.34853 4.1108064 curveto | ||
197 | 18.23874 3.8823064 17.98126 3.7891664 17.8248 3.6263564 curveto | ||
198 | 17.63859 3.4325764 17.71517 3.4010264 17.41745 3.3235764 curveto | ||
199 | closepath | ||
200 | stroke | ||
201 | 0 0 0 setrgbcolor | ||
202 | [] 0 setdash | ||
203 | 0.625 setlinewidth | ||
204 | 1 setlinejoin | ||
205 | 1 setlinecap | ||
206 | newpath | ||
207 | 18.94656 5.9379964 moveto | ||
208 | 19.1584 6.0815564 19.65288 6.5037464 19.84927 6.7041364 curveto | ||
209 | 20.15032 7.0113264 20.45615 7.0883864 20.74625 7.3094564 curveto | ||
210 | 21.09562 7.5756964 21.36463 7.7363464 21.716081 7.9116264 curveto | ||
211 | 22.240021 8.1729464 21.745631 8.1519364 21.36046 8.1686364 curveto | ||
212 | 21.05018 8.1820964 20.67396 8.1984064 20.34068 8.2128564 curveto | ||
213 | 19.96451 8.2291664 19.64035 8.2432264 19.24807 8.2602364 curveto | ||
214 | 19.0781 8.2676064 18.90814 8.2749764 18.73818 8.2823464 curveto | ||
215 | stroke | ||
216 | 0 0 0 setrgbcolor | ||
217 | [] 0 setdash | ||
218 | 0.625 setlinewidth | ||
219 | 1 setlinejoin | ||
220 | 1 setlinecap | ||
221 | newpath | ||
222 | 11.058081 6.3609964 moveto | ||
223 | 10.898991 6.3609964 10.297991 6.3609964 9.9236506 6.3609964 curveto | ||
224 | 9.6528706 6.3609964 9.2296906 6.4606964 9.0019306 6.5275864 curveto | ||
225 | 8.6792106 6.6223764 8.3901106 6.6031664 8.0802106 6.6941864 curveto | ||
226 | 7.7549906 6.7896964 7.3425006 6.8692064 7.0875806 6.9440764 curveto | ||
227 | 6.7203606 7.0519264 6.3784006 7.1731864 6.0240506 7.2772664 curveto | ||
228 | 5.6876206 7.3760764 5.4495006 7.5314764 5.1732306 7.6937564 curveto | ||
229 | 4.8089906 7.9077164 4.5570206 8.1390264 4.1806106 8.3601364 curveto | ||
230 | 3.8315206 8.5651864 3.5054206 9.0700664 3.2588806 9.3597064 curveto | ||
231 | 2.9162706 9.7622164 2.6772606 10.143226 2.4789706 10.609166 curveto | ||
232 | 2.2757806 11.086586 2.1067606 11.567026 1.9117506 12.025216 curveto | ||
233 | 1.7229306 12.468886 1.5183906 12.957456 1.4154406 13.441276 curveto | ||
234 | 1.3145406 13.915446 1.0273606 14.353136 0.84822058 14.774036 curveto | ||
235 | 0.65579058 15.226186 0.63552058 15.643266 0.63552058 15.773606 curveto | ||
236 | stroke | ||
237 | 0 0 0 setrgbcolor | ||
238 | [] 0 setdash | ||
239 | 0.625 setlinewidth | ||
240 | 1 setlinejoin | ||
241 | 1 setlinecap | ||
242 | newpath | ||
243 | 14.33933 10.302876 moveto | ||
244 | 14.20693 10.595156 14.14423 11.072806 13.90194 11.429396 curveto | ||
245 | 13.70442 11.720106 13.37015 12.016406 13.17297 12.234056 curveto | ||
246 | 12.88897 12.547546 12.59356 12.873636 12.298201 13.199656 curveto | ||
247 | 12.020021 13.506716 11.823431 13.804186 11.496341 14.165246 curveto | ||
248 | 11.169801 14.525686 10.912571 14.749106 10.548671 15.050376 curveto | ||
249 | 10.232431 15.312176 9.7936806 15.426826 9.4552106 15.613636 curveto | ||
250 | 9.1243106 15.796266 8.5739906 15.756236 8.2159606 15.855036 curveto | ||
251 | 7.8258106 15.962696 7.3481706 15.832996 6.9767106 15.935496 curveto | ||
252 | 6.5954506 16.040716 6.0587306 15.935496 5.6645506 15.935496 curveto | ||
253 | 5.2171706 15.935496 4.8659706 16.015966 4.4253006 16.015966 curveto | ||
254 | 4.0136906 16.015966 3.5635006 15.935496 3.1131506 15.935496 curveto | ||
255 | 2.7207406 15.935496 2.2370206 15.733586 2.0196906 15.613636 curveto | ||
256 | 1.7663706 15.473826 1.1338906 15.325916 1.0720306 15.291776 curveto | ||
257 | stroke | ||
258 | 0 0 0 setrgbcolor | ||
259 | [] 0 setdash | ||
260 | 0.63630593 setlinewidth | ||
261 | 1 setlinejoin | ||
262 | 1 setlinecap | ||
263 | newpath | ||
264 | 9.9264619 15.524615 moveto | ||
265 | 9.601864 15.336485 9.9988871 16.363201 9.9988871 16.783897 curveto | ||
266 | 9.9988871 17.343824 9.8991612 17.884929 9.9988871 18.462927 curveto | ||
267 | 10.104136 19.072974 9.9702746 19.353219 10.288574 19.722199 curveto | ||
268 | 10.538501 20.011916 10.948726 20.272725 11.157634 20.393812 curveto | ||
269 | 11.29979 20.476203 11.505777 20.474522 11.519735 20.477757 curveto | ||
270 | stroke | ||
271 | 0 0 0 setrgbcolor | ||
272 | [] 0 setdash | ||
273 | 0.625 setlinewidth | ||
274 | 1 setlinejoin | ||
275 | 1 setlinecap | ||
276 | newpath | ||
277 | 10.213238 19.68757 moveto | ||
278 | 10.382008 19.78072 9.6081369 20.54456 9.4113669 20.65317 curveto | ||
279 | 9.2846369 20.72311 9.1736069 20.82462 9.0468769 20.89457 curveto | ||
280 | stroke | ||
281 | 0 0 0 setrgbcolor | ||
282 | [] 0 setdash | ||
283 | 0.625 setlinewidth | ||
284 | 1 setlinejoin | ||
285 | 1 setlinecap | ||
286 | newpath | ||
287 | 6.5393206 16.015966 moveto | ||
288 | 6.2133206 16.195896 6.5393206 16.820626 6.5393206 17.222956 curveto | ||
289 | 6.5393206 17.627916 6.5393206 17.996046 6.5393206 18.429956 curveto | ||
290 | 6.5393206 18.885926 6.5393206 19.341896 6.5393206 19.797876 curveto | ||
291 | 6.5393206 19.821846 7.2722806 20.242636 7.3411906 20.280676 curveto | ||
292 | 7.3483106 20.418036 7.4383906 20.334316 7.4869906 20.361136 curveto | ||
293 | stroke | ||
294 | 0 0 0 setrgbcolor | ||
295 | [] 0 setdash | ||
296 | 0.625 setlinewidth | ||
297 | 1 setlinejoin | ||
298 | 1 setlinecap | ||
299 | newpath | ||
300 | 6.5393206 19.797876 moveto | ||
301 | 6.8774206 19.984476 6.0047406 20.387956 5.7374506 20.683006 curveto | ||
302 | 5.6645606 20.763466 5.5916606 20.843936 5.5187606 20.924396 curveto | ||
303 | stroke | ||
304 | gsave | ||
305 | 0 0 0 setrgbcolor | ||
306 | newpath | ||
307 | 16.59914 4.9921064 moveto | ||
308 | 16.75393 5.5208564 16.53852 5.6023764 16.16176 5.3944364 curveto | ||
309 | 15.78595 5.1870264 16.27681 4.8497864 16.59914 4.9921064 curveto | ||
310 | closepath | ||
311 | fill | ||
312 | grestore | ||
313 | 0 0 0 setrgbcolor | ||
314 | [] 0 setdash | ||
315 | 0.625 setlinewidth | ||
316 | 1 setlinejoin | ||
317 | 1 setlinecap | ||
318 | newpath | ||
319 | 16.59914 4.9921064 moveto | ||
320 | 16.75393 5.5208564 16.53852 5.6023764 16.16176 5.3944364 curveto | ||
321 | 15.78595 5.1870264 16.27681 4.8497864 16.59914 4.9921064 curveto | ||
322 | closepath | ||
323 | stroke | ||
324 | grestore | ||
325 | } def | ||
326 | |||
327 | /cameraview | ||
328 | { | ||
329 | /crtilt exch def %%or swing | ||
330 | /crrise exch def %%or shift | ||
331 | |||
332 | /cftilt exch def %%or swing | ||
333 | /cfrise exch def %%or shift | ||
334 | |||
335 | 30 10 translate | ||
336 | -4 0 moveto 28 0 rlineto stroke | ||
337 | |||
338 | /ftopx -2.5 cftilt mul def | ||
339 | /ftopy 5 cfrise mul 5 add def | ||
340 | /fbotx 2.5 cftilt mul def | ||
341 | /fboty 5 cfrise mul -5 add def | ||
342 | |||
343 | /rtopx 20 -2.5 crtilt mul add def | ||
344 | /rtopy 5 crrise mul 5 add def | ||
345 | /rbotx 20 2.5 crtilt mul add def | ||
346 | /rboty 5 crrise mul -5 add def | ||
347 | |||
348 | ftopx ftopy moveto | ||
349 | fbotx fboty lineto | ||
350 | rbotx rboty lineto | ||
351 | rtopx rtopy lineto | ||
352 | ftopx ftopy lineto | ||
353 | stroke | ||
354 | |||
355 | } def | ||
356 | |||
357 | /greybox | ||
358 | { | ||
359 | /height exch def | ||
360 | /width exch def | ||
361 | /top exch def | ||
362 | /left exch def | ||
363 | |||
364 | /bottom top height sub def | ||
365 | |||
366 | .8 .8 .8 setrgbcolor | ||
367 | left bottom width height rectfill | ||
368 | 0 0 0 setrgbcolor | ||
369 | left bottom width height rectstroke | ||
370 | bottom | ||
371 | } def | ||
372 | |||
373 | /blackbox | ||
374 | { | ||
375 | /height exch def | ||
376 | /width exch def | ||
377 | /top exch def | ||
378 | /left exch def | ||
379 | |||
380 | /bottom top height sub def | ||
381 | |||
382 | 0 0 0 setrgbcolor | ||
383 | left bottom width height rectfill | ||
384 | left bottom width height rectstroke | ||
385 | bottom | ||
386 | } def | ||
387 | |||
388 | /box | ||
389 | { | ||
390 | /height exch def | ||
391 | /width exch def | ||
392 | /top exch def | ||
393 | /left exch def | ||
394 | |||
395 | /bottom top height sub def | ||
396 | |||
397 | 0 0 0 setrgbcolor | ||
398 | left bottom width height rectstroke | ||
399 | bottom | ||
400 | } def | ||
401 | |||
402 | /writingline | ||
403 | { | ||
404 | /height exch def | ||
405 | /width exch def | ||
406 | /top exch def | ||
407 | /left exch def | ||
408 | |||
409 | /bottom top height sub def | ||
410 | |||
411 | .125 setlinewidth | ||
412 | left bottom moveto width 0 rlineto stroke | ||
413 | 1 setlinewidth | ||
414 | bottom | ||
415 | } def | ||
416 | |||
417 | |||
418 | /centertext | ||
419 | { | ||
420 | /s exch def | ||
421 | /x2 exch def | ||
422 | /x1 exch def | ||
423 | /y exch def | ||
424 | |||
425 | x2 x1 sub 2 div x1 add %% midpoint | ||
426 | s stringwidth pop 2 div %% half the string width | ||
427 | sub %% move left to start | ||
428 | |||
429 | y baselineskip sub moveto s show | ||
430 | y baselineskip sub | ||
431 | } def | ||
432 | |||
433 | /righttext | ||
434 | { | ||
435 | /s exch def | ||
436 | /x2 exch def | ||
437 | /x1 exch def | ||
438 | /y exch def | ||
439 | |||
440 | x2 | ||
441 | s stringwidth pop | ||
442 | sub 1 sub | ||
443 | |||
444 | y baselineskip sub moveto s show | ||
445 | y baselineskip sub | ||
446 | } def | ||
447 | |||
448 | /lefttext | ||
449 | { | ||
450 | /s exch def | ||
451 | /x2 exch def | ||
452 | /x1 exch def | ||
453 | /y exch def | ||
454 | |||
455 | x1 1 add | ||
456 | |||
457 | y baselineskip sub moveto s show | ||
458 | y baselineskip sub | ||
459 | } def | ||
460 | |||
461 | |||
462 | /picid | ||
463 | { | ||
464 | /cury exch def | ||
465 | /curx exch def | ||
466 | /wd 42 def | ||
467 | /headht 1 cellheight mul def | ||
468 | /cellht 2 cellheight mul def | ||
469 | |||
470 | curx cury wd headht greybox | ||
471 | |||
472 | cury 2 add | ||
473 | curx curx wd add (ID) centertext | ||
474 | pop | ||
475 | |||
476 | /cury exch def %% add height change from box | ||
477 | |||
478 | cell | ||
479 | |||
480 | bigfont | ||
481 | cury 20 add curx curx wd add idtext centertext pop | ||
482 | smallfont | ||
483 | |||
484 | xpos wd add | ||
485 | } def | ||
486 | |||
487 | /aperture | ||
488 | { | ||
489 | /cury exch def | ||
490 | /curx exch def | ||
491 | /wd 68 def | ||
492 | /headht 1 cellheight mul def | ||
493 | /cellht 2 cellheight mul def | ||
494 | |||
495 | curx cury wd headht greybox | ||
496 | |||
497 | cury 2 add | ||
498 | curx curx wd add (Aperture (f/x)) centertext | ||
499 | pop | ||
500 | |||
501 | /cury exch def %% add height change from box | ||
502 | |||
503 | cell | ||
504 | |||
505 | bigfont | ||
506 | cury 20 add curx curx wd add aperturetext centertext pop | ||
507 | smallfont | ||
508 | |||
509 | xpos wd add | ||
510 | } def | ||
511 | |||
512 | /shutter | ||
513 | { | ||
514 | /cury exch def | ||
515 | /curx exch def | ||
516 | /wd 68 def | ||
517 | /headht 1 cellheight mul def | ||
518 | /cellht 2 cellheight mul def | ||
519 | |||
520 | curx cury wd headht greybox | ||
521 | |||
522 | cury 2 add | ||
523 | curx curx wd add (Shutter (sec)) centertext | ||
524 | pop | ||
525 | |||
526 | /cury exch def %% add height change from box | ||
527 | |||
528 | cell | ||
529 | |||
530 | bigfont | ||
531 | cury 20 add curx curx wd add shuttertext centertext pop | ||
532 | smallfont | ||
533 | |||
534 | xpos wd add | ||
535 | } def | ||
536 | |||
537 | /geometry | ||
538 | { | ||
539 | /rrise exch def | ||
540 | /rtilt exch def | ||
541 | /rswing exch def | ||
542 | /rshift exch def | ||
543 | |||
544 | /frise exch def | ||
545 | /ftilt exch def | ||
546 | /fswing exch def | ||
547 | /fshift exch def | ||
548 | |||
549 | /cury exch def | ||
550 | /curx exch def | ||
551 | /wd 74 def | ||
552 | /headht 1 cellheight mul def | ||
553 | /cellht 2.5 cellheight mul def | ||
554 | |||
555 | curx cury wd headht greybox | ||
556 | |||
557 | cury 2 add | ||
558 | curx curx wd add (Geometry) centertext | ||
559 | pop | ||
560 | |||
561 | /cury exch def %% add height change from box | ||
562 | |||
563 | cell | ||
564 | |||
565 | gsave | ||
566 | curx 3 add cury 6 add translate toppic | ||
567 | grestore | ||
568 | gsave | ||
569 | curx 3 add cury 6 add translate | ||
570 | fshift fswing rshift rswing cameraview | ||
571 | grestore | ||
572 | |||
573 | cell | ||
574 | |||
575 | gsave | ||
576 | curx 3 add cury 6 add translate sidepic | ||
577 | grestore | ||
578 | gsave | ||
579 | curx 3 add cury 6 add translate | ||
580 | frise ftilt rrise rtilt cameraview | ||
581 | grestore | ||
582 | |||
583 | xpos wd add | ||
584 | } def | ||
585 | |||
586 | /film | ||
587 | { | ||
588 | /cury exch def | ||
589 | /curx exch def | ||
590 | /wd 52 def | ||
591 | /headht 1 cellheight mul def | ||
592 | /cellht 2 cellheight mul def | ||
593 | |||
594 | curx cury wd headht greybox | ||
595 | |||
596 | cury 2 add | ||
597 | curx curx wd add (Film) centertext | ||
598 | pop | ||
599 | |||
600 | /cury exch def %% add height change from box | ||
601 | |||
602 | cell | ||
603 | |||
604 | bigfont | ||
605 | cury 20 add curx curx wd add filmtext centertext pop | ||
606 | smallfont | ||
607 | |||
608 | xpos wd add | ||
609 | } def | ||
610 | |||
611 | /carrier | ||
612 | { | ||
613 | /cury exch def | ||
614 | /curx exch def | ||
615 | /wd 42 def | ||
616 | /headht 1 cellheight mul def | ||
617 | /cellht 2 cellheight mul def | ||
618 | |||
619 | curx cury wd headht greybox | ||
620 | |||
621 | cury 2 add | ||
622 | curx curx wd add (Carrier) centertext | ||
623 | pop | ||
624 | |||
625 | /cury exch def %% add height change from box | ||
626 | |||
627 | cell | ||
628 | |||
629 | bigfont | ||
630 | cury 20 add curx curx wd add carriertext centertext pop | ||
631 | smallfont | ||
632 | |||
633 | xpos wd add | ||
634 | } def | ||
635 | |||
636 | /lens | ||
637 | { | ||
638 | /cury exch def | ||
639 | /curx exch def | ||
640 | /wd 42 def | ||
641 | /headht 1 cellheight mul def | ||
642 | /cellht 2 cellheight mul def | ||
643 | |||
644 | curx cury wd headht greybox | ||
645 | |||
646 | cury 2 add | ||
647 | curx curx wd add (Lens) centertext | ||
648 | pop | ||
649 | |||
650 | /cury exch def %% add height change from box | ||
651 | |||
652 | cell | ||
653 | |||
654 | bigfont | ||
655 | cury 20 add curx curx wd add lenstext centertext pop | ||
656 | smallfont | ||
657 | |||
658 | xpos wd add | ||
659 | } def | ||
660 | |||
661 | /process | ||
662 | { | ||
663 | /cury exch def | ||
664 | /curx exch def | ||
665 | /wd 42 def | ||
666 | /headht 1 cellheight mul def | ||
667 | /cellht 2 cellheight mul def | ||
668 | |||
669 | curx cury wd headht greybox | ||
670 | |||
671 | cury 2 add | ||
672 | curx curx wd add (Process) centertext | ||
673 | pop | ||
674 | |||
675 | /cury exch def %% add height change from box | ||
676 | |||
677 | cell | ||
678 | |||
679 | bigfont | ||
680 | cury 20 add curx curx wd add processtext centertext pop | ||
681 | smallfont | ||
682 | |||
683 | xpos wd add | ||
684 | } def | ||
685 | |||
686 | /date | ||
687 | { | ||
688 | /cury exch def | ||
689 | /curx exch def | ||
690 | |||
691 | /wd 252 108 sub def | ||
692 | /cellht 1.5 cellheight mul def | ||
693 | |||
694 | curx cury wd 2 cellht mul box pop | ||
695 | |||
696 | /cury curx cury wd cellht writingline def | ||
697 | /cury curx cury wd cellht writingline def | ||
698 | |||
699 | /cury cury 2 cellht mul add def | ||
700 | /curx curx wd add def | ||
701 | |||
702 | /wd 108 def | ||
703 | /headht 1 cellheight mul def | ||
704 | /cellht 2 cellheight mul def | ||
705 | |||
706 | curx cury wd headht greybox | ||
707 | |||
708 | cury 2 add | ||
709 | curx curx wd add (Date) centertext | ||
710 | pop | ||
711 | |||
712 | /cury exch def %% add height change from box | ||
713 | |||
714 | cell | ||
715 | |||
716 | %% draw the writing lines | ||
717 | |||
718 | xpos | ||
719 | } def | ||
720 | |||
721 | /notes | ||
722 | { | ||
723 | /cury exch def | ||
724 | /curx exch def | ||
725 | |||
726 | /wd 252 def | ||
727 | %%/headht 1 cellheight mul def | ||
728 | /cellht 1.5 cellheight mul def | ||
729 | /boxht 4.5 in 6 cellheight mul sub def %% 5in - header so far | ||
730 | |||
731 | %%curx cury wd headht greybox | ||
732 | |||
733 | %%cury 2 add | ||
734 | %%curx curx wd add (Process) centertext | ||
735 | %%pop | ||
736 | |||
737 | %%/cury exch def %% add height change from box | ||
738 | |||
739 | curx cury wd boxht box pop | ||
740 | |||
741 | %%/cury curx 10 add cury wd 20 sub cellht writingline def | ||
742 | |||
743 | curx cury %% save for returning to print text | ||
744 | /cury curx cury wd cellht writingline def | ||
745 | /cury curx cury wd cellht writingline def | ||
746 | /cury curx cury wd cellht writingline def | ||
747 | /cury curx cury wd cellht writingline def | ||
748 | /cury curx cury wd cellht writingline def | ||
749 | /cury curx cury wd cellht writingline def | ||
750 | /cury curx cury wd cellht writingline def | ||
751 | /cury curx cury wd cellht writingline def | ||
752 | /cury curx cury wd cellht writingline def | ||
753 | /cury curx cury wd cellht writingline def | ||
754 | /cury curx cury wd cellht writingline def | ||
755 | /cury curx cury wd cellht writingline def | ||
756 | |||
757 | moveto %% saved starting point | ||
758 | normalfont | ||
759 | notelines | ||
760 | { | ||
761 | 0 0 cellht sub rmoveto | ||
762 | currentpoint | ||
763 | 2 2 rmoveto | ||
764 | 3 -1 roll show | ||
765 | moveto | ||
766 | } forall | ||
767 | smallfont | ||
768 | |||
769 | xpos | ||
770 | } def | ||
771 | |||
772 | /record | ||
773 | { | ||
774 | /notelines exch def | ||
775 | |||
776 | /rrise exch def | ||
777 | /rtilt exch def | ||
778 | /rswing exch def | ||
779 | /rshift exch def | ||
780 | |||
781 | /frise exch def | ||
782 | /ftilt exch def | ||
783 | /fswing exch def | ||
784 | /fshift exch def | ||
785 | |||
786 | /shuttertext exch def | ||
787 | /aperturetext exch def | ||
788 | /lenstext exch def | ||
789 | |||
790 | /processtext exch def | ||
791 | /carriertext exch def | ||
792 | /filmtext exch def | ||
793 | /idtext exch def | ||
794 | |||
795 | /rtop exch def | ||
796 | /rleft exch def | ||
797 | |||
798 | /xpos rleft def | ||
799 | /ypos rtop def | ||
800 | smallfont | ||
801 | /xpos xpos ypos picid def | ||
802 | /xpos xpos ypos film def | ||
803 | /xpos xpos ypos carrier def | ||
804 | /xpos xpos ypos process def | ||
805 | /xpos xpos ypos | ||
806 | frise ftilt fswing fshift | ||
807 | rrise rtilt rswing rshift | ||
808 | geometry def | ||
809 | |||
810 | /ypos ypos 3 cellheight mul sub def | ||
811 | /xpos rleft def | ||
812 | |||
813 | /xpos xpos ypos lens def | ||
814 | /xpos xpos ypos aperture def | ||
815 | /xpos xpos ypos shutter def | ||
816 | |||
817 | /ypos ypos 3 cellheight mul sub def | ||
818 | /xpos rleft def | ||
819 | |||
820 | %%/xpos xpos ypos date def | ||
821 | %%/ypos ypos 3 cellheight mul sub def | ||
822 | %%/xpos rleft def | ||
823 | |||
824 | /xpos xpos ypos notes def | ||
825 | } | ||
826 | def | ||
827 | |||
828 | %(code)s | ||
829 | |||
830 | /crop | ||
831 | { | ||
832 | gsave | ||
833 | .2 setlinewidth | ||
834 | .7 .7 .7 setrgbcolor | ||
835 | |||
836 | /bottom plantop 8.5 72 mul sub 36 add def | ||
837 | |||
838 | planleft 4.5 sub plantop 36 add moveto | ||
839 | gsave | ||
840 | 0 -8 rmoveto 0 16 rlineto stroke | ||
841 | grestore | ||
842 | -8 0 rmoveto 16 0 rlineto stroke | ||
843 | |||
844 | planright 4.5 add plantop 36 add moveto | ||
845 | gsave | ||
846 | 0 -8 rmoveto 0 16 rlineto stroke | ||
847 | grestore | ||
848 | -8 0 rmoveto 16 0 rlineto stroke | ||
849 | |||
850 | |||
851 | planleft 4.5 sub bottom moveto | ||
852 | 0 -8 rmoveto 0 16 rlineto stroke | ||
853 | |||
854 | planright 4.5 add bottom moveto | ||
855 | 0 -8 rmoveto 0 16 rlineto stroke | ||
856 | |||
857 | grestore | ||
858 | } def | ||
859 | |||
860 | %%crop | ||
861 | |||
862 | %%%%EOF | ||
863 | """ | ||