1 |
%% |
2 |
%% This is file `wlean.mf', |
3 |
%% generated with the docstrip utility. |
4 |
%% |
5 |
%% The original source files were: |
6 |
%% |
7 |
%% barcodes.dtx (with options: `codeeanmf') |
8 |
%% As this is a generated file, you may perhaps not want to edit it. |
9 |
%% This file belongs to the barcode package. |
10 |
%% It may be of no great use without the rest of the barcode package. |
11 |
%% \CharacterTable |
12 |
%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z |
13 |
%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z |
14 |
%% Digits \0\1\2\3\4\5\6\7\8\9 |
15 |
%% Exclamation \! Double quote \" Hash (number) \# |
16 |
%% Dollar \$ Percent \% Ampersand \& |
17 |
%% Acute accent \' Left paren \( Right paren \) |
18 |
%% Asterisk \* Plus \+ Comma \, |
19 |
%% Minus \- Point \. Solidus \/ |
20 |
%% Colon \: Semicolon \; Less than \< |
21 |
%% Equals \= Greater than \> Question mark \? |
22 |
%% Commercial at \@ Left bracket \[ Backslash \\ |
23 |
%% Right bracket \] Circumflex \^ Underscore \_ |
24 |
%% Grave accent \` Left brace \{ Vertical bar \| |
25 |
%% Right brace \} Tilde \~} |
26 |
%% |
27 |
%% Font for printing EAN Code |
28 |
%% For small sizes (on the Deskjet, < 1,0) you have to be |
29 |
%% very careful and test if the font is still machine readable. |
30 |
%% On write-black-printers, it may be necessary to reduce |
31 |
%% the width of black bars by fiddling with |
32 |
%% the definition of fb(). |
33 |
%% For producing EAN Add-ons or codes with variable height, |
34 |
%% it would be a good idea to shorten the height of the bars and |
35 |
%% to leave the numbers out of the bars-definition, so that you |
36 |
%% could stack several bars above each other. |
37 |
%% Flexibility would increase, but---on the other hand--- |
38 |
%% TeX macros for setting EAN code would become even more complicated. |
39 |
%% Peter Willadt 1997, September, 21 |
40 |
%% Author |
41 |
%% Peter Willadt |
42 |
%% Heinrich-Wieland-Allee 5 |
43 |
%% 75177 Pforzheim |
44 |
%% Germany |
45 |
%% email: Willadt@t-online.de |
46 |
|
47 |
mode_setup; |
48 |
|
49 |
%% EAN size 1 (100%) |
50 |
bheight#:=22.85mm#; |
51 |
bdepth#:=1.65mm#; |
52 |
bwidth#:=0.33mm#; |
53 |
digheight#:=2.75mm#; |
54 |
numgap#=1mm#; |
55 |
digdiam#=0.9pt#; |
56 |
lgap#:= bwidth#+0.5 digdiam#; |
57 |
totheight#=bheight#+digheight#+numgap#; |
58 |
ndheight#:=totheight#-bheight#-bdepth#; |
59 |
define_pixels(ndheight,digheight,numgap,lgap,bwidth); |
60 |
define_blacker_pixels(bheight,totheight,digdiam); |
61 |
|
62 |
font_normal_space=7*bwidth#; |
63 |
font_size 10pt#; |
64 |
|
65 |
def fb(expr posn) = |
66 |
x20:=(posn-1)*bwidth; |
67 |
x21:=x20; |
68 |
x22:=posn*bwidth; |
69 |
x23:=x22; |
70 |
y20:=y22:=digheight+numgap; |
71 |
y21:=y23:=h; |
72 |
fill z20--z21--z23--z22--cycle; |
73 |
enddef; |
74 |
|
75 |
def klotz(expr posn) = |
76 |
x1:=(posn-1)*bwidth;x2:=posn*bwidth; |
77 |
x3:=x2;x4:=x1; |
78 |
y1:=y2:=ndheight; |
79 |
y3:=y4:=digheight+numgap; |
80 |
fill z1--z2--z3--z4--cycle; |
81 |
enddef; |
82 |
|
83 |
def nuller = |
84 |
x1=0.5w; |
85 |
y1=digheight; |
86 |
x2=lgap; |
87 |
y2=0.8y1; |
88 |
x3=x2; |
89 |
y3-y4=y1-y2; |
90 |
y4=0; |
91 |
x4=x1; |
92 |
x5=w-x3; |
93 |
y5=y3; |
94 |
x6=x5; |
95 |
y6=y2; |
96 |
pickup pencircle scaled digdiam; |
97 |
draw z1..{down}z2--z3{down}..z4..{up}z5--z6{up}..cycle; |
98 |
enddef; |
99 |
|
100 |
def einser = |
101 |
x1=x2=0.5w+lgap; |
102 |
x3=2*lgap; |
103 |
y1=0; |
104 |
y2=digheight; |
105 |
y3=0.8digheight; |
106 |
pickup pencircle scaled digdiam; |
107 |
draw z1--z2--z3; |
108 |
enddef; |
109 |
|
110 |
def zweier = |
111 |
x1=w-lgap; |
112 |
x2=lgap; |
113 |
y1=y2=0; |
114 |
x3=x2; |
115 |
y3=0.15 digheight; |
116 |
x4=w-lgap; |
117 |
y4=0.6 digheight; |
118 |
x5=x4; |
119 |
y5=0.9 digheight; |
120 |
x6=0.5w; |
121 |
y6=digheight; |
122 |
x7=x2; |
123 |
y7=y5; |
124 |
pickup pencircle scaled digdiam; |
125 |
draw z1--z2{up}..z3..z4..z5..z6..z7; |
126 |
enddef; |
127 |
|
128 |
def dreier = |
129 |
x1=lgap; |
130 |
w-x2=x1; |
131 |
y1=y2=digheight; |
132 |
x3=0.5w; |
133 |
y3=0.6digheight; |
134 |
y4=0.5y3; |
135 |
x4=x2; |
136 |
y5=0; |
137 |
x5=0.5w; |
138 |
x6=x1; |
139 |
y6=0.2 digheight; |
140 |
pickup pencircle scaled digdiam; |
141 |
draw z1--z2--z3{right}..z4..z5..z6; |
142 |
enddef; |
143 |
|
144 |
def vierer = |
145 |
x1=0.6w;y1=digheight; |
146 |
x2=lgap; |
147 |
y2=0.3digheight; |
148 |
y3=y2; |
149 |
w-x3=x2; |
150 |
x4=0.5[x1,x3]; |
151 |
x5=x4; |
152 |
y4=0.5digheight; |
153 |
y5=0; |
154 |
pickup pencircle scaled digdiam; |
155 |
draw z1--z2--z3; |
156 |
draw z4--z5; |
157 |
enddef; |
158 |
|
159 |
def fuenfer = |
160 |
x2=lgap; |
161 |
x2=w-x1; |
162 |
y1=y2=digheight; |
163 |
x3=x2; |
164 |
y3=0.7digheight; |
165 |
x4=x1; |
166 |
y3-y4=y4; |
167 |
x5=x2; |
168 |
y5=0; |
169 |
pickup pencircle scaled digdiam; |
170 |
draw z1--z2--z3{right}..z4..{left}z5; |
171 |
enddef; |
172 |
|
173 |
def sechser = |
174 |
x1=0.6w; |
175 |
y1=digheight; |
176 |
x2=lgap; |
177 |
x4=w-x2; |
178 |
y2=y4=0.5y5; |
179 |
x3=x5=0.5w; |
180 |
y3=0; |
181 |
y5=x4-x2; |
182 |
pickup pencircle scaled digdiam; |
183 |
draw z2..z3..z4..z5..cycle; |
184 |
draw z1..{down}z2; |
185 |
enddef; |
186 |
def siebener = |
187 |
x1=lgap; |
188 |
x2=w-x1; |
189 |
y1=y2=digheight; |
190 |
x3=x4=0.5w; |
191 |
y3=0.3digheight; |
192 |
y4=0; |
193 |
pickup pencircle scaled digdiam; |
194 |
draw z1--z2; |
195 |
draw z2..z3...z4; |
196 |
enddef; |
197 |
def achter = |
198 |
x1=x3=x5=0.5w; |
199 |
y1=digheight; |
200 |
y3=0.6digheight; |
201 |
y5=0; |
202 |
x2=w-x7; |
203 |
x4=w-x6; |
204 |
y2=y7=0.5[y1,y3]; |
205 |
y4=y6=0.5[y3,y5]; |
206 |
x2=1.5lgap; |
207 |
x4=w-lgap; |
208 |
pickup pencircle scaled digdiam; |
209 |
draw z1..z2..z3..z7..cycle; |
210 |
draw z3..z4..z5..z6..cycle; |
211 |
enddef; |
212 |
def neuner = |
213 |
x1=0.4w; |
214 |
y1=0; |
215 |
x2=w-lgap; |
216 |
x4=w-x2; |
217 |
y2=y4=0.5[y5,y3]; |
218 |
x3=x5=0.5w; |
219 |
y3=digheight; |
220 |
y5=0.4 digheight; |
221 |
pickup pencircle scaled digdiam; |
222 |
draw z1..{up}z2; |
223 |
draw z2..z3..z4..z5..cycle; |
224 |
enddef; |
225 |
beginchar("+",3*bwidth#,totheight#,0); "Das Randzeichen"; |
226 |
fb(1); fb(3); |
227 |
klotz(1); |
228 |
klotz(3); |
229 |
endchar; |
230 |
beginchar("-",5*bwidth#,totheight#,0); "Das Mittenzeichen"; |
231 |
fb(2); fb(4); |
232 |
klotz(2); |
233 |
klotz(4); |
234 |
endchar; |
235 |
|
236 |
beginchar("0",7*bwidth#,digheight#,0); |
237 |
nuller; |
238 |
endchar; |
239 |
|
240 |
beginchar("1",7*bwidth#,digheight#,0); |
241 |
einser; |
242 |
endchar; |
243 |
|
244 |
beginchar("2",7*bwidth#,digheight#,0); |
245 |
zweier; |
246 |
endchar; |
247 |
|
248 |
beginchar("3",7*bwidth#,digheight#,0); |
249 |
dreier; |
250 |
endchar; |
251 |
|
252 |
beginchar("4",7*bwidth#,digheight#,0); |
253 |
vierer; |
254 |
endchar; |
255 |
|
256 |
beginchar("5",7*bwidth#,digheight#,0); |
257 |
fuenfer; |
258 |
endchar; |
259 |
|
260 |
beginchar("6",7*bwidth#,digheight#,0); |
261 |
sechser; |
262 |
endchar; |
263 |
|
264 |
beginchar("7",7*bwidth#,digheight#,0); |
265 |
siebener; |
266 |
endchar; |
267 |
|
268 |
beginchar("8",7*bwidth#,digheight#,0); |
269 |
achter; |
270 |
endchar; |
271 |
|
272 |
beginchar("9",7*bwidth#,digheight#,0); |
273 |
neuner; |
274 |
endchar; |
275 |
|
276 |
|
277 |
beginchar("A",7*bwidth#,totheight#,0); "Die Null (A)"; |
278 |
fb(4);fb(5);fb(7); |
279 |
nuller; |
280 |
endchar; |
281 |
|
282 |
beginchar("B",7*bwidth#,totheight#,0); "Die Eins (A)"; |
283 |
fb(3);fb(4);fb(7); |
284 |
einser; |
285 |
endchar; |
286 |
|
287 |
beginchar("C",7*bwidth#,totheight#,0); "Die Zwei (A)"; |
288 |
fb(3);fb(6);fb(7); |
289 |
zweier; |
290 |
endchar; |
291 |
beginchar("D",7*bwidth#,totheight#,0); "Die Drei (A)"; |
292 |
fb(2);fb(3);fb(4);fb(5);fb(7); |
293 |
dreier; |
294 |
endchar; |
295 |
beginchar("E",7*bwidth#,totheight#,0); "Die Vier (A)"; |
296 |
fb(2);fb(6);fb(7); |
297 |
vierer; |
298 |
endchar; |
299 |
beginchar("F",7*bwidth#,totheight#,0); "Die Fuenf (A)"; |
300 |
fb(2);fb(3);fb(7); |
301 |
fuenfer; |
302 |
endchar; |
303 |
beginchar("G",7*bwidth#,totheight#,0); "Die Sechs (A)"; |
304 |
fb(2);fb(4);fb(5);fb(6);fb(7); |
305 |
sechser; |
306 |
endchar; |
307 |
beginchar("H",7*bwidth#,totheight#,0); "Die Sieben (A)"; |
308 |
fb(2);fb(3);fb(4);fb(6);fb(7); |
309 |
siebener; |
310 |
endchar; |
311 |
|
312 |
beginchar("I",7*bwidth#,totheight#,0); "Die Acht (A)"; |
313 |
fb(2);fb(3);fb(5);fb(6);fb(7); |
314 |
achter; |
315 |
endchar; |
316 |
|
317 |
beginchar("J",7*bwidth#,totheight#,0); "Die Neun (A)"; |
318 |
fb(4);fb(6);fb(7); |
319 |
neuner; |
320 |
endchar; |
321 |
|
322 |
|
323 |
beginchar("a",7*bwidth#,totheight#,0); "Die Null (B)"; |
324 |
fb(2);fb(5);fb(6);fb(7); |
325 |
nuller; |
326 |
endchar; |
327 |
|
328 |
beginchar("b",7*bwidth#,totheight#,0); "Die Eins (B)"; |
329 |
fb(2);fb(3);fb(6);fb(7); |
330 |
einser; |
331 |
endchar; |
332 |
|
333 |
beginchar("c",7*bwidth#,totheight#,0); "Die Zwei (B)"; |
334 |
fb(3);fb(4);fb(6);fb(7); |
335 |
zweier; |
336 |
endchar; |
337 |
beginchar("d",7*bwidth#,totheight#,0); "Die Drei (B)"; |
338 |
fb(2);fb(7); |
339 |
dreier; |
340 |
endchar; |
341 |
beginchar("e",7*bwidth#,totheight#,0); "Die Vier (B)"; |
342 |
fb(3);fb(4);fb(5);fb(7); |
343 |
vierer; |
344 |
endchar; |
345 |
beginchar("f",7*bwidth#,totheight#,0); "Die Fuenf (B)"; |
346 |
fb(2);fb(3);fb(4);fb(7); |
347 |
fuenfer; |
348 |
endchar; |
349 |
beginchar("g",7*bwidth#,totheight#,0); "Die Sechs (B)"; |
350 |
fb(5);fb(7); |
351 |
sechser; |
352 |
endchar; |
353 |
beginchar("h",7*bwidth#,totheight#,0); "Die Sieben (B)"; |
354 |
fb(3);fb(7); |
355 |
siebener; |
356 |
endchar; |
357 |
|
358 |
beginchar("i",7*bwidth#,totheight#,0); "Die Acht (B)"; |
359 |
fb(4);fb(7); |
360 |
achter; |
361 |
endchar; |
362 |
|
363 |
beginchar("j",7*bwidth#,totheight#,0); "Die Neun (B)"; |
364 |
fb(3);fb(5);fb(6);fb(7); |
365 |
neuner; |
366 |
endchar; |
367 |
|
368 |
|
369 |
beginchar("K",7*bwidth#,totheight#,0); "Die Null (C)"; |
370 |
fb(1);fb(2);fb(3);fb(6); |
371 |
nuller; |
372 |
endchar; |
373 |
|
374 |
beginchar("L",7*bwidth#,totheight#,0); "Die Eins (C)"; |
375 |
fb(1);fb(2);fb(5);fb(6); |
376 |
einser; |
377 |
endchar; |
378 |
|
379 |
beginchar("M",7*bwidth#,totheight#,0); "Die Zwei (C)"; |
380 |
fb(1);fb(2);fb(4);fb(5); |
381 |
zweier; |
382 |
endchar; |
383 |
beginchar("N",7*bwidth#,totheight#,0); "Die Drei (C)"; |
384 |
fb(1);fb(6); |
385 |
dreier; |
386 |
endchar; |
387 |
beginchar("O",7*bwidth#,totheight#,0); "Die Vier (C)"; |
388 |
fb(1);fb(3);fb(4);fb(5); |
389 |
vierer; |
390 |
endchar; |
391 |
beginchar("P",7*bwidth#,totheight#,0); "Die Fuenf (C)"; |
392 |
fb(1);fb(4);fb(5);fb(6); |
393 |
fuenfer; |
394 |
endchar; |
395 |
beginchar("Q",7*bwidth#,totheight#,0); "Die Sechs (C)"; |
396 |
fb(1);fb(3); |
397 |
sechser; |
398 |
endchar; |
399 |
beginchar("R",7*bwidth#,totheight#,0); "Die Sieben (C)"; |
400 |
fb(1);fb(5); |
401 |
siebener; |
402 |
endchar; |
403 |
|
404 |
beginchar("S",7*bwidth#,totheight#,0); "Die Acht (C)"; |
405 |
fb(1);fb(4); |
406 |
achter; |
407 |
endchar; |
408 |
|
409 |
beginchar("T",7*bwidth#,totheight#,0); "Die Neun (C)"; |
410 |
fb(1);fb(2);fb(3);fb(5); |
411 |
neuner; |
412 |
endchar; |
413 |
|
414 |
end; |
415 |
\endinput |
416 |
%% |
417 |
%% End of file `wlean.mf'. |