diff options
author | Karl Berry <karl@freefriends.org> | 2007-08-07 00:26:02 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2007-08-07 00:26:02 +0000 |
commit | 99fd92a6916e20374728792534ed7f201172aeba (patch) | |
tree | 2143eac2b9104766655bd6bbfcdced34dc82b978 /Master/texmf-dist/doc | |
parent | 19de762b4dff70b0b8ead478b4681b72d2f89853 (diff) |
rm barcode2, it is now in barcodes a la ctan
git-svn-id: svn://tug.org/texlive/trunk@4707 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc')
-rw-r--r-- | Master/texmf-dist/doc/fonts/barcode2/README | 72 | ||||
-rw-r--r-- | Master/texmf-dist/doc/fonts/barcode2/bcfaq.bbl | 47 | ||||
-rw-r--r-- | Master/texmf-dist/doc/fonts/barcode2/bcfaq.tex | 597 | ||||
-rw-r--r-- | Master/texmf-dist/doc/fonts/barcode2/changes | 18 | ||||
-rw-r--r-- | Master/texmf-dist/doc/fonts/barcode2/eandoc.tex | 355 | ||||
-rw-r--r-- | Master/texmf-dist/doc/fonts/barcode2/examples.tex | 138 |
6 files changed, 0 insertions, 1227 deletions
diff --git a/Master/texmf-dist/doc/fonts/barcode2/README b/Master/texmf-dist/doc/fonts/barcode2/README deleted file mode 100644 index 0ad209f8bb5..00000000000 --- a/Master/texmf-dist/doc/fonts/barcode2/README +++ /dev/null @@ -1,72 +0,0 @@ -This package consists of - BCFAQ.TEX (* Some more documentation) - BARCODES.STY (* some often used macros for barcoding) - CODE39.TEX (* macros in TeX for producing code 39 barcode, - documented in itself) - CODEAN.PL ( Preprocessor for EAN and code 128 (written in Perl)) - EANDOC.TEX (* Documentation for WLEAN.MF and CODEAN.PL) - EXAMPLES.TEX (* demo sheet showing the use of all barcode fonts) - WLC128.MF (* Raw Code 128 in Metafont format) - WLC39.MF (* Metafont source for Code 39) - WLC93.MF (* Metafont source for Code 93) - WLC11.MF (* Metafont source for Code 11) - WLEAN.MF (* Metafont source for EAN) - WLCR39.MF (* Metafont source for Code 39 rotated running down) - WLCDB.VPL ( virtual font for codabar barcode) - WLITF.VPL ( virtual font for ITF barcode---interleaved - 2 of 5) - WLCF39.VPL ( virtual full ascii code 39) - CHANGES ( text file listing the changes made) - README ( this file) - BARCODES.INS ( run this through TeX to make the files - ( marked above with a star*) - BARCODES.DTX ( required by barcodes.ins) - -At first you should run barcodes.ins through TeX to obtain the files -marked above with an asterisk. - -To use wlitf and/or wlcdb, run it through vptovf, move the tfm and vf -files, then in TeX say, e.g. - -\font\bcfont=wlitf scaled 2000 -{\bcfont+1234-} - -for ITF. The second line will print 1234 as ITF barcode. -+ and - make the itf start and stop sign, respectively. Please note -that ITF requires an even number of digits. - -For Code 39, you may use something like - -\font\bcfont=wlc39 scaled 2000 -{\bcfont @Hello\char32{}12345@} - -This will yield the word Hello, a space and the digits from one to five. -Please note that the @ is used as start/stop sign in this font. - -Code 128 requires wlc128.mf to be copied to a place where metafont can -find it. Also you should use codean.pl to preprocess your input. -Read the docs, code 128 is somewhat complicated. - -One last example: - -\font\bcfont=wlcdb scaled 2000 -{\bcfont a5678t \qquad b2345n \qquad c6789* \qquad d1234e} - -The last two code lines show the use of codabar. -Please note that the start/stop signs for codabar get decoded, too. - -Usage ist freely permitted, comments are welcome, any warranty is -void. If you may find any inconveniences, bugs, or improvements, do -not hesitate to tell me. - -Please note, the package is still far from complete. -Especially, barcodes.sty needs lots of refinement and some documentation. -Also, code 93 is not thoroughly tested. - -April, 1998 -Peter Willadt -(email: Willadt@t-online.de) - - - - diff --git a/Master/texmf-dist/doc/fonts/barcode2/bcfaq.bbl b/Master/texmf-dist/doc/fonts/barcode2/bcfaq.bbl deleted file mode 100644 index 4dcbe98f544..00000000000 --- a/Master/texmf-dist/doc/fonts/barcode2/bcfaq.bbl +++ /dev/null @@ -1,47 +0,0 @@ -%% -%% This is file `bcfaq.bbl', -%% generated with the docstrip utility. -%% -%% The original source files were: -%% -%% barcodes.dtx (with options: `bcfaqbbl') -%% As this is a generated file, you may perhaps not want to edit it. -%% This file belongs to the barcode package. -%% It may be of no great use without the rest of the barcode package. -%% \CharacterTable -%% {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 -%% 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 -%% Digits \0\1\2\3\4\5\6\7\8\9 -%% Exclamation \! Double quote \" Hash (number) \# -%% Dollar \$ Percent \% Ampersand \& -%% Acute accent \' Left paren \( Right paren \) -%% Asterisk \* Plus \+ Comma \, -%% Minus \- Point \. Solidus \/ -%% Colon \: Semicolon \; Less than \< -%% Equals \= Greater than \> Question mark \? -%% Commercial at \@ Left bracket \[ Backslash \\ -%% Right bracket \] Circumflex \^ Underscore \_ -%% Grave accent \` Left brace \{ Vertical bar \| -%% Right brace \} Tilde \~} -%% -\begin{thebibliography}{Sau92} - -\bibitem[Ol{\v{s}}94]{bc:ean} -Peter Ol{\v{s}}ak. -\newblock The ean barcodes by {\TeX}. -\newblock {\em TUGboat}, 15(4):459--464, 1994. - -\bibitem[Sau92]{bc:sauter} -John Sauter. -\newblock Postnet codes using metafont. -\newblock {\em TUGboat}, 13(4):472--476, 1992. - -\bibitem[Vul91]{bc:vulis} -Dimitri Vulis. -\newblock {\TeX} and envelopes. -\newblock {\em TUGboat}, 12(2):279--284, 1991. - -\end{thebibliography} -\endinput -%% -%% End of file `bcfaq.bbl'. diff --git a/Master/texmf-dist/doc/fonts/barcode2/bcfaq.tex b/Master/texmf-dist/doc/fonts/barcode2/bcfaq.tex deleted file mode 100644 index 8e2e1085961..00000000000 --- a/Master/texmf-dist/doc/fonts/barcode2/bcfaq.tex +++ /dev/null @@ -1,597 +0,0 @@ -%% -%% This is file `bcfaq.tex', -%% generated with the docstrip utility. -%% -%% The original source files were: -%% -%% barcodes.dtx (with options: `bcfaq') -%% As this is a generated file, you may perhaps not want to edit it. -%% This file belongs to the barcode package. -%% It may be of no great use without the rest of the barcode package. -%% \CharacterTable -%% {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 -%% 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 -%% Digits \0\1\2\3\4\5\6\7\8\9 -%% Exclamation \! Double quote \" Hash (number) \# -%% Dollar \$ Percent \% Ampersand \& -%% Acute accent \' Left paren \( Right paren \) -%% Asterisk \* Plus \+ Comma \, -%% Minus \- Point \. Solidus \/ -%% Colon \: Semicolon \; Less than \< -%% Equals \= Greater than \> Question mark \? -%% Commercial at \@ Left bracket \[ Backslash \\ -%% Right bracket \] Circumflex \^ Underscore \_ -%% Grave accent \` Left brace \{ Vertical bar \| -%% Right brace \} Tilde \~} -%% -\documentclass[a4paper]{article} -\bibliographystyle{alpha} - - -\font\itf=wlitf scaled 1200 - -\def\bcbox#1{\lower3pt\hbox{\itf +#1-}} - -\newbox\bsavebox -\newdimen\bcboxdepth -\bcboxdepth=4pt -\def\bdbox#1{\setbox\bsavebox\hbox{\itf +#1-} -\vbox{\hsize=\wd\bsavebox\offinterlineskip% -\copy\bsavebox% -\vskip-\ht\bsavebox\vskip\bcboxdepth% -\box\bsavebox\vskip-\bcboxdepth}} -\def\bebox#1{\setbox\bsavebox\hbox{\itf +#1-} -\vbox{\hsize=\wd\bsavebox\offinterlineskip% -\copy\bsavebox% -\copy\bsavebox% -\vskip-\ht\bsavebox\vskip\bcboxdepth% -\box\bsavebox\vskip-\bcboxdepth}} - -\def\tbs{{\tt\char92}} -\begin{document} -\title{Barcodes-FAQ} -\author{Peter Willadt} -\date{1997-11-09} -\maketitle -\begin{abstract} - -This file deals with questions about barcode fonts created for -\TeX{}. Its purpose is not to replace the regular documents, but to add -informations that may be of no interest for the casual reader. - -\end{abstract} - -\section{Changelog} - -\subsection{Changes of the barcode package in general} -\begin{tabular}{ll} -\em Date & \em Change\\ -1998-11-28 & included wlcr39, wlcf39, and wlc93\\ -1998-04-21 & fixed wlitf bug\\ -1998-04-10 & switched partially to docstrip archive\\ - & added support for code 11\\ -1998-01-24 & added code 128 in MF format, changed codean.pl\\ -1997-11-08 & changed metrics of {\sc itf} start/stop chars\\ -1997-10-09 & released first version of the barcode package -\end{tabular} - -\subsection{Changes within this document} - -\begin{tabular}{ll} -\em Date & \em Change\\ -1998-11-28 & added docs about code 93\\ -1998-04-10 & added docs about code 11\\ -1998-01-24 & added information about code 128\\ -1997-12-08 & added contributions to {\sc ean} coding by Kalvis M. Jansons\\ - & changed section on plessey\\ -1997-11-09 & added several items, rearranged sections\\ -1997-11-08 & started writing first version -\end{tabular} - -\section{Introduction} - -The barcode package itself can be found on {\tt ctan} in the -subdirectory\\ {\tt fonts/barcodes/willadt}. It contains---among -others---several fonts in {\sc vpl} format, so your {\sc dvi} driver -should be able to handle virtual fonts. If it doesn't, you may perhaps -use {\em dvicopy} to resolve the references to virtual fonts, or you -may perhaps upgrade to a more modern \TeX{} package. - -\section{What about docs?} - -\subsection{Docs about barcodes} - -With the barcode package, there comes documentation about {\sc ean} -fonts. In the README file, there are short examples of the use of -the other fonts, too. Also the files {\tt examples.tex} shows the look -and basic usage of the barcodes. - -In {\sl TUGboat}, barcoding has been covered in several -articles \cite{bc:ean,bc:sauter,bc:vulis}. The barcode package itself -is covered in an article that has appeared in the december issue, -1997, of {\sl TUGboat}. - -\subsection{Some information about code 128} - -Code 128 is able to print all 128 ascii chars. There are a little more -than a hundred glyphs that are interpreted in three different -ways. Some of the glyphs are used as shift chars to determine which -interpretation to use. A checksum is mandatory. To use it, you must -install {\tt wlc128.mf}. - -The preprocessing---switching among the different character sets, -coding efficiently, calculating the checksum---is handled by the -newer versions of codean.pl. This is perhaps not as pleasing as to do -it with \TeX{} alone, but, alas, it works. - -The way to run the preprocessor is described in {\tt eandoc.tex}. To -use code 128, you have to write a line starting with {\tt\tbs cxxviii\{} -followed by the characters you want to code and followed by a closing -brace. Non-printing seven-bit ascii characters may be specified in hex -in C or \TeX{} style, like {\tt\tbs x3f} or \verb|^^3f|. Anything up to -the rightmost closing brace in this line will be coded---there is no -brace matching. But you will get a warning message if your text -includes a right brace. So you may want to code braces in hex form to -avoid this message. Please note that {\tt codean.pl} does almost no -checking for errors, so if you intend to produce garbage, there are -lots of ways. If you need code 128 escape characters, they may be -included as hex characters with codes starting at 0x80. - -\begin{tabular}{lllll} -\em Input Code & \em C128 number &\multicolumn{3}{c}{\em meaning}\\ -\em(hex) & \em(dec.) & \em Set A & \em Set B & \em Set C\\ -0x80 & 96 & FNC3 & FNC3 & 96\\ -0x81 & 97 & FNC2 & FNC2 & 97\\ -0x82 & 98 & SHIFT & SHIFT & 98\\ -0x83 & 99 & CODE C& CODE C& 99\\ -0x84 & 100 & CODE B& FNC4 & CODE B\\ -0x85 & 101 & FNC4 & CODE A& CODE A\\ -0x86 & 102 & FNC1 & FNC1 & FNC1\\ -0x87 & 103 & START A& START A& START A\\ -0x88 & 104 & START B& START B& START B\\ -0x89 & 105 & START C& START C& START C\\ -0x8a & 106 & STOP & STOP & STOP -\end{tabular} - -But please keep in mind that {\tt codean.pl} does almost anything for you, -you should not have the need to insert start/stop codes and the -like. Only if you use EAN128, you will need {\tt FNC1}. Just to make -it clear: For your barcode to include {\tt FNC1} you have to write -\verb|^^86| before preprocessing. - -{\tt codean.pl} will insert a sequence of hex digits; the original -text will be appended to the line as a comment. -Also, your \TeX{} file has to define some macros. They look like -this: - -\begin{verbatim} -\font\fntcxx=wlc128 scaled \magstep3 -\def\CXXVIII{\bgroup\fntcxx\let\next\hexchar\next} -\def\cxxviii{\message{OOPS, use codean.pl}} -\def\hexchar#1#2{\if#1@ - \global\let\next\egroup - \else\char"#1#2\fi\next} -\end{verbatim} - -If you do not like end recursion, you might use other ones. If -you dislike the hex format produced by {\tt codean.pl}, you are free to -change it---as long as you don't redistribute. - -\subsection{A little bit about code 11} - -Code 11 is a numeric-only barcode. It is almost as space-efficient as -{\sc itf}, and it comes with a checksum. The checksum should be -swallowed by the reading device. The checksum is a weighted mod-11 -checksum. There are apparently two kinds of checksum in use: such with -one checkdigit and such with two checkdigits. - -To use code 11, you should include {\tt barcode.sty}. \TeX{} will -calculate the checksum on its own. If you need two check digits, you -should say\\ -{\tt\tbs codexichecksumktrue}.\\ -How many check digits you -actually need should be made clear in the documentation to your -reading device\footnote{You may also want to check the documentation -to find out if your reading device supports code 11 at all; code 11 is -not that common.}. You may code the digits 0--9, and the minus -sign. The start and stop sign is mapped to the @ character. Here is a -full example. {Please note: If you do not use \LaTeX{}, you may -have to supply a definition for {\tt\tbs makeatletter} -and {\tt\tbs makeatother}}: - -\begin{verbatim} -\input barcodes.sty -%% with two check digits -\codexichecksumktrue -\codxi{12-1234} - -%% with only one check digit. -\codexichecksumkfalse -\codxi{12-1234} -\bye -\end{verbatim} - -\subsection{About code 93} - -Code 93 is a little bit more compact than code 39 (as it uses also the -gap between the characters), but in other aspects it is quite -similiar. A checksum with two digits is mandatory. As with code 11, -checksumming works by weighing the characters different depending on -their position within the barcode. - -The version of code 93 that is included within the package resorts to -uppercase ascii, digits, and to some other signs. Start and stop sign -are mapped to {\tt<} and {\tt>}, respectively. - -Full ascii works similiar to full ascii with code 39 (that means with -escape characters), but fortunately the escape characters are -different from ordinary characters, so that you can hardly be -misunderstood. Unfortunately the escape characters are named (\$), -(\%), (/), and (+), so I decided to map them to opening and closing -parentheses and brackets, respectively. This may not seem very clever -when it comes to full ascii, but these characters may also appear as -checksum characters, so we need them when doing uppercase ascii, -too. For full ascii, it would be clever to redo the font in a -completely different way and to map start sign, stop sign and the four -escape characters to positions above 128, so that any 7 bit ascii -character can be input directly. - -Code 93 is supported by codean.pl in the same way as ean or code 128 -are. You have to write {\tt\tbs xciii\{YOUR DATA 123\}}, run the file -through {\tt codean.pl}, then you'll get\\ -{\tt\tbs XCIII\{YOUR DATA 123NN\}\%Code93(YOUR DATA 123)} - -The NN make up the two check characters. Normally, they are different, -but in this example they are equal, by incident. - -\subsection{Docs about VPL Files} - -VPL files are documented in the files {\tt VPtoVF.WEB} and {\tt -VFtoVP.WEB}. Both files can be found on {\sc ctan} under {\tt -SYSTEMS/KNUTH}. {\em WEAVE} may be used to produce \TeX{} files. The -documentation about the VPL/VF file formats is covered within the -first few sections. - -\section{I want other metrics etc.} - -\subsection{My barcodes should have depth} - -You have got several possibilities to obtain depth. The most simple -approach may be to set the barcodes with the regular barcode fonts into an -{\tt\tbs hbox} and then to {\tt\tbs lower} this hbox. - -Let's look at an example: - -\begin{verbatim} -\font\itf=wlitf scaled 1200 -\def\bcbox#1{\lower3pt\hbox{\itf +#1-}} - Example: -{\sc itf} barcode looks like \quad\bcbox{1009}\quad -for 1009, e.g. -\end{verbatim} - -This code yields the following result: - -{\sc itf} barcode looks like \quad\bcbox{1009}\quad for 1009, e.g. - -Another approach is to edit the font sources. In case of {\sc vpl} -files, this is quite painful. Rules in {\sc vpl} files do not have -depth, so you have to change the characters mapping in a way that you -add a {\em movedown} before you draw, and a {\em moveup} afterwards. -You may see the changes for an arbitrary character from {\tt -WLITF.VPL}: - -\begin{verbatim} -(CHARACTER D48 - (COMMENT from WLITF.VPL} - (CHARWD D 14) (CHARHT R 10) - (CHARDP R 0) (CHARIC R 0.0) - (MAP - (SETRULE R 14 R 1)(MOVERIGHT R 1) - (SETRULE R 14 R 1)(MOVERIGHT R 1) - (SETRULE R 14 R 2)(MOVERIGHT R 2) - (SETRULE R 14 R 2)(MOVERIGHT R 2) - (SETRULE R 14 R 1)(MOVERIGHT R 1) - ) - ) -\end{verbatim} - -This character may be lowered by four units by editing in a way that the -following lines result. Please note that there were not only the {\em -moveup} and {\em movedown} commands added, but also the height an -depth have been changed. - -\begin{verbatim} -(CHARACTER D48 - (COMMENT Lowered to give some depth) - (CHARWD D 14) (CHARHT R 10) - (CHARDP R 4) (CHARIC R 0.0) - (MAP - (MOVEDOWN R 4) - (SETRULE R 14 R 1)(MOVERIGHT R 1) - (SETRULE R 14 R 1)(MOVERIGHT R 1) - (SETRULE R 14 R 2)(MOVERIGHT R 2) - (SETRULE R 14 R 2)(MOVERIGHT R 2) - (SETRULE R 14 R 1)(MOVERIGHT R 1) - (MOVEUP R 4) - ) - ) -\end{verbatim} - -\subsection{My barcodes are too tall} - -For the sake of the person who has to scan the barcodes, barcodes just -can't be tall enough. If the complete code is as tall as wide, the -reading device can be twisted against the code at an angle of 45 -degrees. If they are half as high, the angle reduces to 26 degrees. - -If you really want short codes, you have to edit the sources. In the -{\sc vpl} file, you have to change the {\em charht} and the first parameter -to the {\em setrule} command at well. You also should change the {\em -designsize} parameter. - -\subsection{My barcodes are not tall enough} - -You may also change the sources, like described in the previous -subsection. But there is another solution that is perhaps more -practical. The idea is simple that double black is still black and -that you may overlay several printouts of the same barcode. Here is -the example code (it may be made taller by adding more copies of the -barcode box, of course). There is an extra dimension {\em bcboxdepth} -added to yield depth for the barcodes. - -\begin{verbatim} -\newbox\bsavebox -\newdimen\bcboxdepth -\bcboxdepth=4pt -\def\bdbox#1{\setbox\bsavebox\hbox{\itf +#1-} -\vbox{\hsize=\wd\bsavebox\copy\bsavebox% -\vskip-\ht\bsavebox\vskip\bcboxdepth% -\box\bsavebox\vskip-\bcboxdepth}} -\def\bebox#1{\setbox\bsavebox\hbox{\itf +#1-} -\vbox{\hsize=\wd\bsavebox\copy\bsavebox% -\vskip0pt\copy\bsavebox% -\vskip-\ht\bsavebox\vskip\bcboxdepth% -\box\bsavebox\vskip-\bcboxdepth}} - Example: -Tall {\sc itf} barcode looks like \quad\bdbox{1009}\quad -or (still taller) \quad\bebox{1009}\quad for 1009, e.g. -\end{verbatim} - -And here is the result, you may compare it with the output of the -previous example: - -Tall {\sc itf} barcode looks like \quad\bdbox{1009}\quad or (still -taller) \quad\bebox{1009}\quad for 1009, e.g. - -\subsection{My barcodes are too wide/too narrow} - -Perhaps you should change the barcode size (by changing -{\tt\tbs magnification}) and then read the subsections above about too -tall bars and bars that are not tall enough. - -\subsection{My barcodes should run vertically} - -Vertically oriented barcode is a good idea for cans, bottles and -similiar things. - -It just depends on your {\sc dvi} driver. Perhaps there is a -possibility to handle rotation via {\tt\tbs special}, as with {\em -dvips} and the {\em rotate} macros. For experimantal purposes I have -included a code 39 version running down instead right ({\tt -wlcr39.mf}). You may perhaps use it with {\tt\tbs shortstack} or -similiar. Here is some code I used (successfully) with plain \TeX: - -\begin{verbatim} -\font\testfont=wlcr39 scaled 1200 -\def\bcbax{\let\next\bcbox\vbox\bgroup - \offinterlineskip\testfont\setbox0\hbox{@}\hsize=\wd0 - \noindent{}@\hfil\break\next} -\def\fertig{@\hfil\break\egroup} -\def\bcbox#1{\if @#1\let\next\fertig\else#1\hfil\break\fi\next} - -Look buddy, this is \bcbax1406632@ code 39 -stacked and running downwards. -\end{verbatim} - -\subsection{I heard something about full ascii code 39} - -Well, umh, now that you ask\dots The truth is: You may perhaps be able to -configure your reading device to accept full ascii code~39. Then you may -code any 7~bit character you may think of. The bad news is that most of -the symbols have to be coded by two -characters -- and as code 39 has already low density, you should not -expect to get much use of it. Perhaps you might want to try code 128 -instead---it features full 7-bit ascii without any compromise. - -Another anti-feature is that switching to reading full-ascii code~39 -may lead to some bad reads of `normal' code~39. In full ascii, the lower -case letters, e.g., are made by prepending the uppercase letters with a -plus sign, so {\tt+A} is read as {\tt a}. So, if you have got regular -code~39 that contains such character sequences, and you have switched -your reading device to full ascii, you may get bad results. - -But, now that you want it: With the barcode package there comes a font -{\tt wlcf39.vpl}. You may install it like the other vpl files. It has got -132 characters and has already taken all the coding for full ascii, so -when you typ {\tt e,\$4+A}, it will silently be mapped to what you -would have typed as {\tt+E/L/D/KA}, if you would use the plain code~39 -format\footnote{Please take note: 6 characters are blown up to 9, -think again about using another code}. In my version of full ascii -code~39, the start/stop sign is mapped to @@ (or \verb|\char128|). So -you actually had to add @@ to the front and the end of the example -string. If you can not exclude that the character sequence @@ appears -within the text you want to code, you have to avoid ligature -processing. You may do that like this: - -\begin{verbatim} -\font\fullas=wlcf39 scaled 1728 -\def\alphanolig{\char64\kern0pt} -\def\printacode#1{{\fullas@@{\catcode`\@=\active% -\let @=\alphanolig#1}@@}} -\end{verbatim} - -You also have to escape or circumscribe special characters to make -them really printable, of course, so that when you wanted a backspace, -a tab, a space, a dollar sign, a percent sign, and a bell character to -be coded, you would type something like - -\begin{verbatim} -{\fullas @@\char8\char9\char32\$\%\char7} -\end{verbatim} - -\section{Troubleshooting} - -\subsection{My barcodes can't be decoded} - -At first, try to make them larger. If that does't help, make them -larger, again. If that will not help, obtain fonts in \TeX{} or -Metafont format and make them brighter. Or, perhaps better, obtain a -better printer. - -You also should check the contrast between bars and background, -especially when using a dot matrix printer or coloured background -or---still worse---red bars. - -\subsection{My decoder reads extra digits, sometimes} - -I guess you use {\sc itf} barcode with a number of digits that is -sometimes even and sometimes odd. As {\sc itf} always codes two digits -at once, you should take care just to code an even number of digits at -any time. If an excess zero at the beginning of your number is not -acceptable, you might try another kind of barcode instead of {\sc -itf}. - -\section{Missing items} - -\subsection{I am missing two-of-five} - -I got specs for two-of-five (three bars). If you want it, let me know; -I might implement it. For other kinds of two-of-five, I haven't got -complete specs. - -\subsection{I am missing plessey} - -I got the specs but I haven't yet got the time to implement them. With -plessey, there also rise several questions due to the fact that -plessey has never been officialy standardized. The only thing that is -absolutely sure about plessey is how binary ones and zeros are -encoded. There are codes that are more wide-spread. Several modern -barcode readers can't cope with plessey code. - -\subsection{I am missing \dots{} some other barcode} - -I have checked out several two-dimensional barcodes. But for most of -them, support by \TeX{} seems to be rather pointless. Perhaps Metafont -could be called any time you have to code something to draw the -symbols, but you might as well use a custom drawing program that comes -from the barcode vendor. Also, most two-dimensional barcodes (and -other barcodes not mentioned here) are proprietary. Last not least the -reading devices I have access to can deal only with a finite range of -barcodes. - -I am sorry, but I haven't got the specs for further barcodes -not mentioned here. If you could be so kind as to send them to me, I -might perhaps implement them. - -\section{Contributions} - -\subsection{EAN without preprocessing} - -The following code is due to Kalvis M. Jansons. - -It handles printing of {\sc ean} without having to run a -preprocessor. Not only are the {\sc ean} bars drawn, also the checksum -checksum is checked. It can be easily -adapted to non-\LaTeX{} use by omitting anything before \verb|\font| - -\begin{verse} -Kalvis M. Jansons - -eMail: \verb|<kalvis@math.ucl.ac.uk>| - -\end{verse} - -An easy way to use the barcode fonts in \LaTeX{}: - -\begin{verbatim} -\documentclass[a4paper]{article} - -\pagestyle{empty} - -\setlength{\oddsidemargin}{0pt} -\setlength{\textwidth}{\paperwidth} -\addtolength{\textwidth}{-2in} -\setlength{\marginparwidth}{0pt} - -\setlength{\textheight}{\paperheight} -\addtolength{\textheight}{-2.5in} -\setlength{\topmargin}{0pt} - -\font\eanfont=WLEAN scaled 2000 -\def\ean#1{\vbox{\vskip20pt\eanfont#1\vskip20pt}} -\newcount\num -\def\a#1{\num=#1 \advance\num by `A \char\num} -\def\b#1{\num=#1 \advance\num by `a \char\num} -\def\c#1{\num=#1 \advance\num by `K \char\num} -\def\C#1#2#3#4#5#6{\c#1\c#2\c#3\c#4\c#5\c#6} - -\def\A#1#2#3#4#5#6#7{\ifcase #7 -{\a#1\a#2\a#3\a#4\a#5\a#6}% -\or {\a#1\a#2\b#3\a#4\b#5\b#6}% -\or {\a#1\a#2\b#3\b#4\a#5\b#6}% -\or {\a#1\a#2\b#3\b#4\b#5\a#6}% -\or {\a#1\b#2\a#3\a#4\b#5\b#6}% -\or {\a#1\b#2\b#3\a#4\a#5\b#6}% -\or {\a#1\b#2\b#3\b#4\a#5\a#6}% -\or {\a#1\b#2\a#3\b#4\a#5\b#6}% -\or {\a#1\b#2\a#3\b#4\b#5\a#6}% -\or {\a#1\b#2\b#3\a#4\b#5\a#6}% -\fi} - -\newcount\cha -\newcount\chb -\makeatletter -\long\def\for{\@for} -\makeatother -\gdef\mysix#1#2#3#4#5#6{,#1#2,#3#4,#5#6} -\gdef\mywork#1#2{\advance\cha by #1 \advance\chb by #2} -\gdef\barch#1.#2.#3.{ -\xdef\mylist{0#1\mysix#2\mysix#3} -\cha=0 -\chb=0 -\for \x:=\mylist\do{\expandafter\mywork\x} -\multiply\cha by 3 -\advance\chb by \cha -\cha=\chb -\divide\cha by 10 -\multiply\cha by -10 -\advance\chb by \cha} -\def\bar#1.#2.#3.{\barch#1.#2.#3. -\ifnum\chb>0 #1#2#3 has a bad check sum!\\[20pt] -\else \ean{#1 +\A#2#1-\C#3+}\fi} -\begin{document} - - Examples - -\bar3.034325.106199. - -\bar4.074400.410000. - -\bar5.449000.055521. - -\bar5.010027.522336. - -\bar8.410005.421052. - -\bar9.780192.828941. - -\end{document} -\end{verbatim} - -\bibliography{bcfaq} - -\end{document} -\endinput -%% -%% End of file `bcfaq.tex'. diff --git a/Master/texmf-dist/doc/fonts/barcode2/changes b/Master/texmf-dist/doc/fonts/barcode2/changes deleted file mode 100644 index 4214325c514..00000000000 --- a/Master/texmf-dist/doc/fonts/barcode2/changes +++ /dev/null @@ -1,18 +0,0 @@ -This file documents changes to the barcode package. -Its purpose is to make updating easier. - -1998-04-21 fixed wlitf bug -1998-04-10 switched partly to docstrip-archive: - moved TeX and MF sources into barcodes.dtx, - added barcodes.ins - moved some macros to barcodes.sty (unfinished) - added code 11, so changed bcfaq.tex and examples.tex -1998-01-24 Added Code 128. Adopted codean.pl to code 128 - corrected isbn bug in codean.pl - Minor change to eandoc.tex - Added code 128 to bcfaq.tex, examples.tex, REAMDE -1997-11-29 Added version date to examples.tex -1997-11-08 Changed metrics of WLITF start and stop char - to remove the large whitespace. -1997-11-08 Corrected README file. -1997-10-09 Released first version of the barcode package.
\ No newline at end of file diff --git a/Master/texmf-dist/doc/fonts/barcode2/eandoc.tex b/Master/texmf-dist/doc/fonts/barcode2/eandoc.tex deleted file mode 100644 index c89375950da..00000000000 --- a/Master/texmf-dist/doc/fonts/barcode2/eandoc.tex +++ /dev/null @@ -1,355 +0,0 @@ -%% -%% This is file `eandoc.tex', -%% generated with the docstrip utility. -%% -%% The original source files were: -%% -%% barcodes.dtx (with options: `eandoc') -%% As this is a generated file, you may perhaps not want to edit it. -%% This file belongs to the barcode package. -%% It may be of no great use without the rest of the barcode package. -%% \CharacterTable -%% {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 -%% 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 -%% Digits \0\1\2\3\4\5\6\7\8\9 -%% Exclamation \! Double quote \" Hash (number) \# -%% Dollar \$ Percent \% Ampersand \& -%% Acute accent \' Left paren \( Right paren \) -%% Asterisk \* Plus \+ Comma \, -%% Minus \- Point \. Solidus \/ -%% Colon \: Semicolon \; Less than \< -%% Equals \= Greater than \> Question mark \? -%% Commercial at \@ Left bracket \[ Backslash \\ -%% Right bracket \] Circumflex \^ Underscore \_ -%% Grave accent \` Left brace \{ Vertical bar \| -%% Right brace \} Tilde \~} -%% -\documentclass{article} -\begin{document} -\author{Peter Willadt} -\title{EAN Barcodes by \TeX{} an Metafont} -\date{1998-01-24} -\maketitle -\begin{abstract} -This article documents the use of the font {\tt wlean.mf}. With the font, -there also comes an auxiliary Perl file for preprocessing TeX source. -Its use is also documented here. -\end{abstract} - -\section{Legal Restrictions and Introduction} - -The files in this package come with no warranty. They may be freely -used without permission. The complete contents of this package is -described in the file {\tt readme}. That file also contains some -information about the use of the other barcode fonts that are -contained. For more information about these other files you may want -to read an article that has appeared in the december, 1997 issue of -{\em TUGboat}. Please see also the remarks in the section {\em -Address} later in this file. - -\section{About {\sc ean}} - -In stores, {\sc upc} and {\sc ean} codes are widely used for automatic -identification, pricing etc. {\sc ean} consist of either eight or -thirteen digits. Twelve digit {\sc upc} codes are like thirteen digit -{\sc ean} with the first digit equal to zero. {\sc ean} specifications -do not only -require bars, also the encoded number has to be written in plain text, -in case a reader is defective or the code is too hard to read. {\sc -ean} is a high-density code, and so it is highly vulnerable. - -\subsection{Coding} - -The last digit of an {\sc ean} is a weighted mod 10 checksum. Digits -are alternatingly multiplied by 1 or 3. The so calculated sum over all -digits has to be divisible by ten without any remainder. - -There are three different {\sc ean} character sets labeled A, B, and -C. Eight digit {\sc ean} codes use character sets A and C, {\sc ean} -codes with thirteen digits use all three character sets---see below. - -\begin{verse} -{\sc ean} with eight digits consists of:\\ -a sidebar\\ -the first four digits (coded in character set A),\\ -the middle separator,\\ -the other four digits (coded in character set C)\\ -another sidebar. -\end{verse} - -The first half of an {\sc ean} code with thirteen digits is coded in -the character sets A and B, the second half in character set C. The -coding of the very first digit is hidden in the varying use of the -character sets A and B. A C programmer might use the following table -and algorithm to decide which character set to use for digits 2--7: - -\begin{verbatim} -static UBYTE abtab[10][6]={ - {0,0,0,0,0,0}, /* 0 */ - {0,0,1,0,1,1}, /* 1 */ - {0,0,1,1,0,1}, /* 2 */ - {0,0,1,1,1,0}, /* 3 */ - {0,1,0,0,1,1}, /* 4 */ - {0,1,1,0,0,1}, /* 5 */ - {0,1,1,1,0,0}, /* 6 */ - {0,1,0,1,0,1}, /* 7 */ - {0,1,0,1,1,0}, /* 8 */ - {0,1,1,0,1,0} /* 9 */ -}; - -char eancode[18]; -char eansource[14]="4025700001030"; - -eancode[0]=eansource[0]; -eancode[1]=' '; -eancode[2]='+'; -for(i=1;i<7;i++) - eancode[i+2]='A'+eansource[i]-'0' - +abtab[eansource[0]-'0'][i-1]*('a'-'A'); -/* then the middle separator, digits 7--13, - * and the final + sign */ -\end{verbatim} - -A zero means to use character set A and a one means to use character -set B for the respective digit. The printed code of an {\sc ean} 13 -consist of the following elements, from left to right: - -\begin{verse} -The first digit in human-readable form\\ -an {\sc ean} sidebar\\ -six digits in character sets A or B\\ -the {\sc ean} middle separator\\ -six digits in character set C\\ -another {\sc ean} sidebar -\end{verse} - -Magazines or codes with pricing have a so called extension following -the main code with some fixed distance. This extension consists of one -sidebar and two or five digits. As I have no full {\sc ean} -documentation at hand at the time of this writing, I am sorry that I -am not able to tell you more about this. - -The {\sc ean} digits themselves obey to the following rules: Each -digit takes seven units of space. Some of the seven elements are -white, others are black. Digits from character set A always are white -at the left edge and black at the right, and they always have an odd numer -of black elements. Digits from character set B are quit similiar, but -they have an even number of black elements. Digits from Character set C -always start with a black element and have an even number of -black elements. The rightmost element in character set C is always white. -The sidebars are three elements wide, the middle separator takes five -elements. - -\subsection{What {\sc ean} numbers may I use?} - -For inhouse use, you may use any 13-digit {\sc ean} that starts with a -2. If you want to have your products sold elsewhere, you have to buy a -set of {\sc ean} numbers from the organisation in your country that -holds these numbers. For germany, this organisation is the {\em -Zentrale f\"ur Coorganisation} in Cologne. Almost any country has a -similiar organisation. - -The first digit or sometimes the first two digits code the country of -origin, the next five to six digits code the manufacturer, the eigth -to twelfth digits are for free use by the manufacturer. The -thirteenth digit is, as explained above, a checksum. {\sc ean} do not -contain any qualifiers, so if you get an {\sc ean} from somewhere, you -may find out about the country of origin and about the manufacturer of -the product, but if you want to know more, you have to contact the -manufacturer. - -\section{Using {\tt wlean.mf}} - -{\tt wlean.mf} is rather raw. It contains all three {\sc ean} -character sets within one single font, but at different places. -The character sets A, B, C, and the digits are -featured through the following characters: - -\begin{verse} -0 to 9 yield the digits from 0 to 9\\ -A to J yield the codes from character set A\\ -a to j yield the codes from character set B\\ -K to T yield the codes from character set C\\ -+ makes the left and right sidebar and\\ -- makes the middle sign -\end{verse} - -So, to code the number {\tt 2099993098253}, you have to write\\ -\verb*|{\eanfont2 +AJjjJd-KTSMPN+}|. The space is necessary to separate -the leading 2 from the barcode. - -{\tt wlean.mf} does not use true {\sc ocr} digits, as it should. As -the digits will not be used for {\sc ocr}, I do not consider this as -a serious restriction. If you really need {\sc ocr} digits, there is -an {\sc ocr} font on {\sc ctan}. And in {\em TUGboat}, there has been -a publication about {\sc ean}, where \TeX{} draws the bars and -the {\sc ocr} font prints the digits, see [1]. - -{\tt wlean.mf} uses the normal {\sc ean} dimensions. If you would like -lower bars---in contradiction to the {\sc ean} rules---you have to edit -the source. The rules also make recommendations about the scaling. To -be fully compatible, this font may be scaled 0.8, 0.9, 1, 1.2, 1.4, -1.5, 1.7, 1.85, or 2 times the original size. With a 300 dpi printer, -I do not recommend using sizes$<1.0$. - -\subsection{Installation} - -The installation itself is pretty mundane, like with any plain font. -Just copy {\tt wlean.mf} to a location where Metafont can find -it. Then invoke Metafont to create a {\sc tfm} file. Move this {\sc -tfm} file where \TeX{} can find it. Type in the example at the end of -this file and run it through \TeX{}. Then call Metafont again to -produce a font suitable for your printer or previewer and move this -font to an appropriate location. You may also want to edit {\tt -codean.pl} to run on your shell. For this purpose you have to read -your system's documentation or the documentation that comes with Perl. - -\subsection{Making readable output} - -Don't make {\sc ean} too small. With a 300 dpi printer, you should not -use this font with magnification$<1$; {\tt scaled 1200} will be okay. -If you want to do mass production, go to somebody with a barcode -reader and check your output, {\em before} you loose money. You also -should consider changes in the blackness that may be caused by -production printing devices. And, of course, you should only use -colours that can be used with barcode reading devices. Especially, do -not use red and watch for much contrast between the colour you print -and the colour of the paper. - -\subsection{Coding the numbers} - -You will perhaps not want to write something as ugly and error-prone -as \verb*|{\eanfont2 +AJjjJd-KTSMPN+}| manually. So you have to use a -preprocessor\footnote{See bcfaq.tex for \TeX{} code to go without -preprocessing. It is very fine.}. With {\tt wlean.mf} there comes a -tiny Perl program ({\tt codean.pl}) that does preprocessing within -your \TeX{} sources\footnote{codean.pl in the meantime also handles -code 128. See bcfaq.tex}. - -The \TeX{} file to be filtered may contain any number of lines -that have one of the following commands starting at the leftmost position. - -\begin{itemize} -\item \verb|\ean{|{\em12 or 13 digit number}\verb|}| -The number will be coded as {\sc ean}. If it is only 12 digits long, the -checksum will be calculated, too. - -\item \verb|\embed{|{\em12 or 13 digit number}\verb|}| -The number is used as a base for embedding article numbers \&c.\ -within an {\sc ean}. - -\item \verb|\eean{|{\em number with at most 11 digits}\verb|}| -This number is to be embedded within an {\sc ean}. - -\item \verb|\isbn{|{\em valid ISBN}\verb|}| An {\sc isbn} to -make an embedded {\sc ean} of. -\end{itemize} - -Let's look at an example: You want the {\sc isbn} {\tt0-201-13448-9} -to be embedded. So you write \verb|\isbn{0201134489}|, but you might -also use the embedding method and write -\verb|\embed{9780000000000}| and, somewhere later in the file, -\verb|\eean{020113448}|. In this latter case you have to omit the last digit, -as {\sc isbn} loose their check digit in favour of the {\sc ean} check digit. -Anyway you do it, you get your command replaced by -\verb|\EAN{|{\em13-digit-number-coded-strange}\verb|}| in the output -file. - -But embedding is especially useful if you also write the program that -reads the barcodes. This program might then extract your article -number from an {\sc ean} starting with {\tt20}, eg. - -What you have to do is, of course, to use stub definitions for the -three macros mentioned above---as they shall never actually be -typeset---and to use a valid definition for \verb|\EAN|. Then you run -your \TeX{} source through {\tt codean.pl}. This program takes as -first parameter the name of your original file and as second parameter -the name of your destination file. If you omit the parameters, you will -be asked for them. - -You may of course also peek the source of {\tt codean.pl} to see how -{\sc ean} checksums are calculated, and so on. - -\subsection{Example} - -Here is a full example. -Use this \TeX{} source: - -\begin{verbatim} -\font\eanfont=WLEAN -\def\ean#1{\message{Call codean.pl}} -\def\eean#1{\message{Call codean.pl}} -\def\isbn#1{\message{Call codean.pl}} -\def\embed#1{} -\def\EAN#1{\vbox{\vskip10pt\eanfont#1\vskip10pt}} - Now, something to do: -\ean{4025700001030} % or, without checksum: -\ean{402570000103} -\embed{2500000000000} -\eean{123} -\isbn{0201134489} -\end{verbatim} - -Having run your file through {\tt codean.pl}, the lines after the percent -sign look like this: - -\begin{verbatim} - Now, something to do: -\EAN{4 +AcFHaa-KKLKNK+} % or, without checksum: %(4025700001030) -\EAN{4 +AcFHaa-KKLKNK+} %(402570000103) -\embed{2500000000000} -\EAN{2 +FAaaAa-KKLMNT+} % embedded(123) -\EAN{9 +HiaCaB-LNOOSN+} % ISBN(0201134489) -\end{verbatim} - -Running this file through \TeX{}, you get {\sc dvi} output containig -{\sc ean} barcodes. Perhaps you wonder why there is not even a -single {\sc ean} contained within this documentation. The reason is -quite simple: You should be able to read the docs {\em before} you -have installed the font. But now is the right time to try the example -on your own. Better yet, you may code an {\sc ean} where you have -taken the number from something like your favourite candy and then, -having printed it, you may compare the bars. This is a nice way to -spend your evenings. I actually started deciphering {\sc ean} codes in -this way, several years ago. - -\section{The End} - -\subsection{Address} - -Just in case you want to write to me, here is my address---but -please note: I am not the {\sc ean} guru. - -\begin{verbatim} -Peter Willadt -Heinrich-Wieland-Allee 5 -75177 Pforzheim -Germany -email: Willadt@t-online.de -\end{verbatim} - -I also would appreciate if only one version of the material contained -in this package is distributed. So if you have any corrections, -suggestions, \&c., please do not hesitate to send them to me to -incorporate them within this package. - -\subsection{Acknowledgement} - -I want to express my special thanks to Barbara Beeton for proofreading -and making valuable suggestions. If there are still any typos or -illegibilities, that is due to the fact that I had to change some -things later on. - -\begin{thebibliography}{1} - -\bibitem{bc:ean} -Peter Ol{\v{s}}ak. -\newblock The {\sc ean} barcodes by {\TeX}. -\newblock {\em TUGboat}, 15(4):459--464, 1994. - -\end{thebibliography} - -\end{document} -\endinput -%% -%% End of file `eandoc.tex'. diff --git a/Master/texmf-dist/doc/fonts/barcode2/examples.tex b/Master/texmf-dist/doc/fonts/barcode2/examples.tex deleted file mode 100644 index 520fcb78431..00000000000 --- a/Master/texmf-dist/doc/fonts/barcode2/examples.tex +++ /dev/null @@ -1,138 +0,0 @@ -%% -%% This is file `examples.tex', -%% generated with the docstrip utility. -%% -%% The original source files were: -%% -%% barcodes.dtx (with options: `example') -%% As this is a generated file, you may perhaps not want to edit it. -%% This file belongs to the barcode package. -%% It may be of no great use without the rest of the barcode package. -%% \CharacterTable -%% {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 -%% 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 -%% Digits \0\1\2\3\4\5\6\7\8\9 -%% Exclamation \! Double quote \" Hash (number) \# -%% Dollar \$ Percent \% Ampersand \& -%% Acute accent \' Left paren \( Right paren \) -%% Asterisk \* Plus \+ Comma \, -%% Minus \- Point \. Solidus \/ -%% Colon \: Semicolon \; Less than \< -%% Equals \= Greater than \> Question mark \? -%% Commercial at \@ Left bracket \[ Backslash \\ -%% Right bracket \] Circumflex \^ Underscore \_ -%% Grave accent \` Left brace \{ Vertical bar \| -%% Right brace \} Tilde \~} -%% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%% -%% This file documents look and use of -%% the barcodes this package belongs to. -%% It may be freely used without any -%% further permission. -%% You should have received this file as part of -%% the barcode package. -%% -%% Author: Peter Willadt -%% Date: 1997-11-29 -%% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%% -%% Note: -%% 1. This file has already been run through codean.pl -%% -%% 2. You need to have the fonts installed, of course. -%% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%% Fonts -%% -\font\xlix=wlc39 scaled 2000 -\font\itf=wlitf scaled 2000 -\font\cdb=wlcdb scaled 2000 -\font\eanfont=WLEAN scaled 1200 -\font\fntcxx=wlc128 scaled \magstep3 -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%% Inputs -%% -\input code39.tex -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%% Def's -%% -%% for EAN -\def\ean#1{\message{Call codean.pl}} -\def\eean#1{\message{Call codean.pl}} -\def\isbn#1{\message{Call codean.pl}} -\def\embed#1{} -\def\EAN#1{\vbox{\hsize=0.4\hsize\vskip10pt\eanfont#1\vskip10pt}} -%% for Code 128 -\def\CXXVIII{\bgroup\fntcxx\let\next\hexchar\next} -\def\hexchar#1#2{\if#1@\global\let\next\egroup\else\char"#1#2\fi\next} -%% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%% Here we go -\parindent0pt -Hello, this is a test sheet of the barcode fonts. - -At first, we deal with code 39. Code 39 is represented in this package -both in form of a native font (Metafont-source) and in form of -\TeX{}-macros. code 39 features low-density alphanumeric encoding. - -Here you may see how HELLO looks like in code 39 (the start and stop -sign is mapped to @, if you're curious, so in the source to this sheet -I have written {\tt@HELLO@} after having selected the proper -font). This first example uses the font. - -{\xlix@HELLO@} - -Another approach is to use \TeX{} macros to make up bars. Here is the -same HELLO with macros: - -\begincodethirtynine{HELLO}\endcodethirtynine - -Interleaved two-of-five (ITF for short) features high-density -numerical-only encoding. Your code has to have an even number of -digits. The start sign is mapped to $+$, the end sign to $-$. -So, to code 0123456789, you type {\tt+0123456789-}, and the result -looks like this: - -{\itf+0123456789-} - -If you still have not got enough of barcoding, here is codabar. Here -you got four sets of start/stop signs that get decoded together with -the numbers. The start/stop sign pairs are a/t, b/n, c/*, and d/e. So -{\tt a12345t} looks like this:\bigskip - -{\cdb a12345t} - -Now you should have a look at code 128. The bars itself look sometimes -disrupted; this is due to the fact that the widest elements are four -times as wide as the narrowest. Code 128 enables you to code any 7-bit -ascii character. With digits only, it is as efficent as itf. The bad -news is the preprocessing required, so you have to read the docs. The -following bars mean {\tt Hallo123456}\bigskip - -\CXXVIII 6828414C4C4F630C2238506A@@ % Code128(Hallo123456) - -And, last and perhaps most important, the EAN font. Read {\tt -eandoc.tex} to find out how these are coded, here is just the output -of the example code mentioned there: -\embed{2500000000000} - -\line{ -\EAN{4 +AcFHaa-KKLKNK+} % or, without checksum: %(4025700001030) -\hfil -\EAN{4 +AcFHaa-KKLKNK+} %(402570000103) -} -\line{ -\EAN{2 +FAaaAa-KKLMNT+} % embedded(123) -\hfil -\EAN{9 +HiaCaB-LNOOSN+} % ISBN(0201134489) -} - -And that's all. Perhaps you may think that this is not a beautiful -document---but barcodes aren't beautiful. As long as reading devices -do not have \ae{}sthetic feelings, I don't regard this as a problem. -\bye -\endinput -%% -%% End of file `examples.tex'. |