summaryrefslogtreecommitdiff
path: root/info/digests/texhax/txh/vulis.txh
diff options
context:
space:
mode:
Diffstat (limited to 'info/digests/texhax/txh/vulis.txh')
-rw-r--r--info/digests/texhax/txh/vulis.txh267
1 files changed, 267 insertions, 0 deletions
diff --git a/info/digests/texhax/txh/vulis.txh b/info/digests/texhax/txh/vulis.txh
new file mode 100644
index 0000000000..e35bde570e
--- /dev/null
+++ b/info/digests/texhax/txh/vulis.txh
@@ -0,0 +1,267 @@
+10-Nov-87 14:05:55-PST,10055;000000000000
+Return-Path: <CLDLV%NASAGISS.BITNET@forsythe.stanford.edu>
+Date: Tue, 10 Nov 87 15:46:49 EDT
+From: Dimitri Vulis <CLDLV%NASAGISS.BITNET@forsythe.stanford.edu>
+Subject: Foo (bar codes)
+
+Dear Malcolm: I believe that the following file would of general
+interest, but I think it's too long for the digest:
+
+% I was amazed to find out that business people pay enormous money for the
+% ability to produce bar codes. This ought to be TRIVIAL with \TeX.
+% So, I got hold of a public domain BASIC program that supposedly does that and
+% lifted the codes and put them into METAFONT (it was EASY). Caveat(s): I have
+% never tested these codes with an OCR. The BASIC program said it used `3 of 9'
+% encoding. I presume it's not the same as UPC. The sizes may be off---I
+% took them from the BASIC program that used HP LJ's 100dpi graphics mode.
+% Disclaimer: I haven't tested these codes. Use them at your own risk.
+% Remarks:
+% 1) White space is a displayable character.
+% 2) There are 9 significant strips, bwbwbwbwb; 3 of them are wide.
+% 3) The white_naro; at the end of each code is the inter-code spacing.
+% Credits: the original BASIC program was written by `Bill Wood Mil., WI' and
+% later re-written by `Bill Baines, Enfield, CT.'. METAFONT version is by
+% `Dimitri Vulis CLDLV@NASAGISS.BITNET'
+mode_setup;
+font_identifier "DVBar"; font_size .35in#;
+naro#:=.01in#; % narrow strip width
+wide#:=3naro#; % wide strip width
+wdth#:=3wide#+7naro#; % common width of all codes
+hght#:=.35in#; % common height of all codes
+define_pixels(naro,wide,wdth,hght);
+def white_naro=
+ wid:=wid+naro;
+enddef;
+def black_naro=
+ filldraw (wid,0)--(wid,hght)--(wid+naro,hght)--(wid+naro,0)--cycle;
+ wid:=wid+naro;
+enddef;
+def white_wide=
+ wid:=wid+wide;
+enddef;
+def black_wide=
+ filldraw (wid,0)--(wid,hght)--(wid+wide,hght)--(wid+wide,0)--cycle;
+ wid:=wid+wide;
+enddef;
+beginchar("1",wdth#,hght#,0);
+wid:=0;
+black_wide; white_naro; black_naro; white_wide; black_naro;
+white_naro; black_naro; white_naro; black_wide; white_naro;
+endchar;
+beginchar("2",wdth#,hght#,0);
+wid:=0;
+black_naro; white_naro; black_wide; white_wide; black_naro;
+white_naro; black_naro; white_naro; black_wide; white_naro;
+endchar;
+beginchar("3",wdth#,hght#,0);
+wid:=0;
+black_wide; white_naro; black_wide; white_wide; black_naro;
+white_naro; black_naro; white_naro; black_naro; white_naro;
+endchar;
+beginchar("4",wdth#,hght#,0);
+wid:=0;
+black_naro; white_naro; black_naro; white_wide; black_wide;
+white_naro; black_naro; white_naro; black_wide; white_naro;
+endchar;
+beginchar("5",wdth#,hght#,0);
+wid:=0;
+black_wide; white_naro; black_naro; white_wide; black_wide;
+white_naro; black_naro; white_naro; black_naro; white_naro;
+endchar;
+beginchar("6",wdth#,hght#,0);
+wid:=0;
+black_naro; white_naro; black_wide; white_wide; black_wide;
+white_naro; black_naro; white_naro; black_naro; white_naro;
+endchar;
+beginchar("7",wdth#,hght#,0);
+wid:=0;
+black_naro; white_naro; black_naro; white_wide; black_naro;
+white_naro; black_wide; white_naro; black_wide; white_naro;
+endchar;
+beginchar("8",wdth#,hght#,0);
+wid:=0;
+black_wide; white_naro; black_naro; white_wide; black_naro;
+white_naro; black_wide; white_naro; black_naro; white_naro;
+endchar;
+beginchar("9",wdth#,hght#,0);
+wid:=0;
+black_naro; white_naro; black_wide; white_wide; black_naro;
+white_naro; black_wide; white_naro; black_naro; white_naro;
+endchar;
+beginchar("0",wdth#,hght#,0);
+wid:=0;
+black_naro; white_naro; black_naro; white_wide; black_wide;
+white_naro; black_wide; white_naro; black_naro; white_naro;
+endchar;
+beginchar("A",wdth#,hght#,0);
+wid:=0;
+black_wide; white_naro; black_naro; white_naro; black_naro;
+white_wide; black_naro; white_naro; black_wide; white_naro;
+endchar;
+beginchar("B",wdth#,hght#,0);
+wid:=0;
+black_naro; white_naro; black_wide; white_naro; black_naro;
+white_wide; black_naro; white_naro; black_wide; white_naro;
+endchar;
+beginchar("C",wdth#,hght#,0);
+wid:=0;
+black_wide; white_naro; black_wide; white_naro; black_naro;
+white_wide; black_naro; white_naro; black_naro; white_naro;
+endchar;
+beginchar("D",wdth#,hght#,0);
+wid:=0;
+black_naro; white_naro; black_naro; white_naro; black_wide;
+white_wide; black_naro; white_naro; black_wide; white_naro;
+endchar;
+beginchar("E",wdth#,hght#,0);
+wid:=0;
+black_wide; white_naro; black_naro; white_naro; black_wide;
+white_wide; black_naro; white_naro; black_naro; white_naro;
+endchar;
+beginchar("F",wdth#,hght#,0);
+wid:=0;
+black_naro; white_naro; black_wide; white_naro; black_wide;
+white_wide; black_naro; white_naro; black_naro; white_naro;
+endchar;
+beginchar("G",wdth#,hght#,0);
+wid:=0;
+black_naro; white_naro; black_naro; white_naro; black_naro;
+white_wide; black_wide; white_naro; black_wide; white_naro;
+endchar;
+beginchar("H",wdth#,hght#,0);
+wid:=0;
+black_wide; white_naro; black_naro; white_naro; black_naro;
+white_wide; black_wide; white_naro; black_naro; white_naro;
+endchar;
+beginchar("I",wdth#,hght#,0);
+wid:=0;
+black_naro; white_naro; black_wide; white_naro; black_naro;
+white_wide; black_wide; white_naro; black_naro; white_naro;
+endchar;
+beginchar("J",wdth#,hght#,0);
+wid:=0;
+black_naro; white_naro; black_naro; white_naro; black_wide;
+white_wide; black_wide; white_naro; black_naro; white_naro;
+endchar;
+beginchar("K",wdth#,hght#,0);
+wid:=0;
+black_wide; white_naro; black_naro; white_naro; black_naro;
+white_naro; black_naro; white_wide; black_wide; white_naro;
+endchar;
+beginchar("L",wdth#,hght#,0);
+wid:=0;
+black_naro; white_naro; black_wide; white_naro; black_naro;
+white_naro; black_naro; white_wide; black_wide; white_naro;
+endchar;
+beginchar("M",wdth#,hght#,0);
+wid:=0;
+black_wide; white_naro; black_wide; white_naro; black_naro;
+white_naro; black_naro; white_wide; black_naro; white_naro;
+endchar;
+beginchar("N",wdth#,hght#,0);
+wid:=0;
+black_naro; white_naro; black_naro; white_naro; black_wide;
+white_naro; black_naro; white_wide; black_wide; white_naro;
+endchar;
+beginchar("O",wdth#,hght#,0);
+wid:=0;
+black_wide; white_naro; black_naro; white_naro; black_wide;
+white_naro; black_naro; white_wide; black_naro; white_naro;
+endchar;
+beginchar("P",wdth#,hght#,0);
+wid:=0;
+black_naro; white_naro; black_wide; white_naro; black_wide;
+white_naro; black_naro; white_wide; black_naro; white_naro;
+endchar;
+beginchar("Q",wdth#,hght#,0);
+wid:=0;
+black_naro; white_naro; black_naro; white_naro; black_naro;
+white_naro; black_wide; white_wide; black_wide; white_naro;
+endchar;
+beginchar("R",wdth#,hght#,0);
+wid:=0;
+black_wide; white_naro; black_naro; white_naro; black_naro;
+white_naro; black_wide; white_wide; black_naro; white_naro;
+endchar;
+beginchar("S",wdth#,hght#,0);
+wid:=0;
+black_naro; white_naro; black_wide; white_naro; black_naro;
+white_naro; black_wide; white_wide; black_naro; white_naro;
+endchar;
+beginchar("T",wdth#,hght#,0);
+wid:=0;
+black_naro; white_naro; black_naro; white_naro; black_wide;
+white_naro; black_wide; white_wide; black_naro; white_naro;
+endchar;
+beginchar("U",wdth#,hght#,0);
+wid:=0;
+black_wide; white_wide; black_naro; white_naro; black_naro;
+white_naro; black_naro; white_naro; black_wide; white_naro;
+endchar;
+beginchar("V",wdth#,hght#,0);
+wid:=0;
+black_naro; white_wide; black_wide; white_naro; black_naro;
+white_naro; black_naro; white_naro; black_wide; white_naro;
+endchar;
+beginchar("W",wdth#,hght#,0);
+wid:=0;
+black_wide; white_wide; black_wide; white_naro; black_naro;
+white_naro; black_naro; white_naro; black_naro; white_naro;
+endchar;
+beginchar("X",wdth#,hght#,0);
+wid:=0;
+black_naro; white_wide; black_naro; white_naro; black_wide;
+white_naro; black_naro; white_naro; black_wide; white_naro;
+endchar;
+beginchar("Y",wdth#,hght#,0);
+wid:=0;
+black_wide; white_wide; black_naro; white_naro; black_wide;
+white_naro; black_naro; white_naro; black_naro; white_naro;
+endchar;
+beginchar("Z",wdth#,hght#,0);
+wid:=0;
+black_naro; white_wide; black_wide; white_naro; black_wide;
+white_naro; black_naro; white_naro; black_naro; white_naro;
+endchar;
+beginchar("-",wdth#,hght#,0); % minus
+wid:=0;
+black_naro; white_wide; black_naro; white_naro; black_naro;
+white_naro; black_wide; white_naro; black_wide; white_naro;
+endchar;
+beginchar(".",wdth#,hght#,0); %period
+wid:=0;
+black_wide; white_wide; black_naro; white_naro; black_naro;
+white_naro; black_wide; white_naro; black_naro; white_naro;
+endchar;
+beginchar(" ",wdth#,hght#,0); %white space
+wid:=0;
+black_naro; white_wide; black_wide; white_naro; black_naro;
+white_naro; black_wide; white_naro; black_naro; white_naro;
+endchar;
+beginchar("*",wdth#,hght#,0); %ascii asterisk
+wid:=0;
+black_naro; white_wide; black_naro; white_naro; black_wide;
+white_naro; black_wide; white_naro; black_naro; white_naro;
+endchar;
+beginchar("$",wdth#,hght#,0); %dollar sign
+wid:=0;
+black_naro; white_wide; black_naro; white_wide; black_naro;
+white_wide; black_naro; white_naro; black_naro; white_naro;
+endchar;
+beginchar("/",wdth#,hght#,0); %forward slash
+wid:=0;
+black_naro; white_wide; black_naro; white_wide; black_naro;
+white_naro; black_naro; white_wide; black_naro; white_naro;
+endchar;
+beginchar("+",wdth#,hght#,0); %plus
+wid:=0;
+black_naro; white_wide; black_naro; white_naro; black_naro;
+white_wide; black_naro; white_wide; black_naro; white_naro;
+endchar;
+beginchar("%",wdth#,hght#,0); %percent sign
+wid:=0;
+black_naro; white_naro; black_naro; white_wide; black_naro;
+white_wide; black_naro; white_wide; black_naro; white_naro;
+endchar;
+end; %all done
+-------