Newsgroups: fj.comp.texhax
Path: galaxy.trc.rwcp.or.jp!coconuts.jaist!wnoc-tyo-news!tokyonet.ad.jp!tokyonet.ad.jp!tdi-extnews!tdi-rcac!wnoc-kyo-news!kuis-news!kuee-news!kuee!tsato
From: tsato@tsurugi.kuee.kyoto-u.ac.jp (Toru Sato)
Subject: barcode style (code128)
Message-ID: <TSATO.96Apr19162548@tsurugi.kuee.kyoto-u.ac.jp>
Lines: 427
Sender: news@kuee.kuee.kyoto-u.ac.jp (KUEE News Administrator)
Nntp-Posting-Host: tsurugi.kuee.kyoto-u.ac.jp
Organization: Dept. of Electr., Kyoto Univ., Japan
Date: Fri, 19 Apr 1996 07:25:48 GMT
Xref: galaxy.trc.rwcp.or.jp fj.comp.texhax:7800
X-originally-archived-at: http://galaxy.rwcp.or.jp/text/cgi-bin/newsarticle2?ng=fj.comp.texhax&nb=7800&hd=a
X-reformat-date: Mon, 18 Oct 2004 15:18:22 +0900
X-reformat-comment: Tabs were expanded into 4 column tabstops by the Galaxy's archiver. See http://katsu.watanabe.name/ancientfj/galaxy-format.html for more info.

$B:4F#!w5~Bg!%EE;RDL?.(B $B$G$9!#(B

$B:rG/Ej9F$7$?(B 3-of-9 code $B$K0z$-B3$-!"1Q>.J8;z$bI=8=$G$-$k(B code128 $B$N(B
$B%P!<%3!<%I$r:n@.$9$k%^%/%m$r8x3+CW$7$^$9!J$3$N:nIJ$O!"<g$KKLLn@5M:@h@8$N(B
$B;XF3$K$h$j(BM2$B$N>>1:9'2p;a$K$h$j:n@.$5$l$^$7$?!K!#$"$kDxEY$N%F%9%H$O9T$C$F(B
$B$$$^$9$,!"7k2L$OJ]>ZCW$7$^$;$s$N$G!"$4;HMQ$K$"$?$C$F$O==J,$4Cm0U2<$5$$!#(B

$B0J2<$K;HMQJ}K!$H%9%?%$%k%U%!%$%k$r$D$1$^$9!#(B
----------------------------------------------------------------------
bc128.sty $BMxMQ$N<j0z$-(B    (ver1.00: 96/04/19  K.Matsuura, M.Kitano, T.Sato)

$B!V(Bcode128$B!W$N%P!<%3!<%I$r:n@.$9$k%^%/%m$G$9!#(B
code128 $B$O!"(BSet A,B,C $B$N(B3$B<o$h$j9=@.$5$l!"(B
 Set A: $B1QBgJ8;z$H?t;z!"5-9f!"@)8fJ8;z(B
 Set B: $B1QBg>.J8;z$H?t;z!"5-9f(B
 Set C: $B?t;z!J05=L%b!<%I!K(B
$B$r07$$$^$9!#$3$N%9%?%$%k%U%!%$%k$O!"$3$N$&$A(B Set B,C $B$N$_$r:n@.$9$k$?$a$N(B
$B$b$N$G$9!J(BSet A $B$O(B TeX $B$G@)8fJ8;z$r07$&$N$,LLE]$J$N$HMxMQIQEY$,Dc$=$&$J$N$G(B
$B$d$a$^$7$?!K!#$^$?8e=R$N$h$&$K!"F10l%P!<%3!<%ICf$G$O(B Set B $B$H(B C $B$N:.9g$O(B
$B$G$-$^$;$s!#(B

$BNc$($PJ8;zNs!V(BAbc 123$#$B!W$rI=$9%P!<%3!<%I$r:n$k$K$O!"(B
  \documentstyle[bc128]{article}
$B$J$I$H;XDj$7$?>e$G!"J8=qCf$NG$0U$N>l=j$G(B
  \barcodeB{Abc 123\$\#}
$B$H$7$^$9!#(B
  \BarcodeB{Abc 123\$\#}
$B$H$9$k$H!"%3!<%I$N2<$KJ8;zNs$,=q$+$l$^$9!#(B

$B?t;z$N$_$N>l9g$O!"(B
  \barcodeC{012345}
$B$^$?$O(B
  \BarcodeC{012345}
$B$H$9$k$H(B Set C $B$N05=L%b!<%I!J(B2$B7e$r(B1$B%7%s%\%k$GI=<($9$k!K$,MxMQ$G$-$^$9!#(B
$B$?$@$7!"4q?t7e$N?t$r;XDj$9$k$H!":G8e$N(B1$B7e$N$_(B Set B $B$K@Z$jBX$($FI=<((B
$B$7$^$9!#=>$C$F(B4$B7e0J>e$N?t;z$N>l9g$KM-8z$G$9!#(B

code128 $B$O!"!V%3!<%I(BABC$B;XDj!W!\!VJ8;zNs!W!\!V%A%'%C%/J8;z!W!\!V=*N;J8;z!W(B
$B$K$h$j9=@.$5$l$^$9!#0lHL$K$O!V%3!<%I(BABC$B;XDj!W!\!VJ8;zNs!W$NItJ,$O0l$D$N(B
$B%P!<%3!<%I$NCf$KJ#?tAH8=$l$F$b$h$$$N$G$9$,!"$3$N%9%?%$%k%U%!%$%k$G$O!"(B
Set C $B$G4q?t7e$N?t;z$r;XDj$9$k>l9g0J30$O:.9g9=@.$O$G$-$^$;$s!#(B

$B%3!<%I$N9b$5$dI}$O!"0J2<$N%Q%i%a!<%?$K$h$j;XDj$7$^$9!#(B
%%%%%%% $B@)8f%Q%i%a!<%?I8=`CM0lMw(B %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\barheight=12mm          % $B%3!<%I$N9b$5!JJ8;z$N9b$5$O4^$^$J$$!K(B
\barunit=0.4mm           % $BC10LD9!J:Y$$%3!<%I$NI}!K(B
\def\widebarfactor{2.0}  % $BB@$$%3!<%I$H:Y$$%3!<%I$NI}$NHf!J(B2.0$B!A(B3.0$B!K(B
\def\spacebarfactor{2.5} % $B%7%s%\%k4V$N6uGr$H:Y$$%3!<%I$NHf!J(B0.5 $B0J>e!K(B
\def\thinbarfactor{0.1}  % $B9u%P!<$r$3$N%U%!%/%?!<$@$169$/$9$k(B
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

$BCm0U!'(B
$B!&(BSet C$B%3!<%I$G?t;z0J30$NJ8;z$r;XDj$7$?>l9g$N7k2L$OJ]>Z$5$l$^$;$s!#(B

$B!!!!!!!!!!!!!!!!!!!!!!!!:4F#!!5|!wEE;RDL?.9)3X65<<!%5~ETBg3X(B
$B!!!!!!!!!!!!!!!!!!!!!!!!(Btsato@kuee.kyoto-u.ac.jp
                        http://www-lab26.kuee.kyoto-u.ac.jp/~tsato

%----(cut here)--------(cut here)--------(cut here)--------(cut here)----
% bc128.sty: produce code128 Set-B barcode
%             (upper-and-lower case letters, numbers, and symbols)
%            or Set-C barcode (numbers)
%    Ver.1.00 (Apr.19, 1996) by K. Matsuura, M. Kitano and T. Sato 
%    (contact address: tsato@kuee.kyoto-u.ac.jp)
%    based on 'spreadtitle.sty'
% Usage: Set-B: \barcodeB{Abc 123}  or \BarcodeB{Abc 123} (with letters)
%        Set-C: \barcodeC{1234}  or \BarcodeC{1234} (with letters)
% Note: \barcodeC produces compressed code for numbers by generating a symbol
%       for each two-digit number.
%       Set-A code (special symbols in place of lowercase of set B) is not
%       supported. Also, Set-B and Set-C cannot be mixed in a barcode except
%       for a case of an odd-digit number generated by \barcodeC, where the
%       last digit is automatically switched to Set-B.
\newdimen\barheight
\newdimen\barunit
\newdimen\@bsheight
\newdimen\@BH
\newdimen\@BN
\newdimen\@BW
\newdimen\@BX
\newdimen\@BY
\newdimen\@BS
\newdimen\@BT
\newcount\@a
\newcount\@b
\newcount\@c
\newcount\@d
\newcount\@e
\newcount\@f
\newif\if@Bstring
%%%%%%% default control parametrs %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\barheight=12mm          % height of the code
\barunit=0.4mm           % unit width (=width of the narrow pattern)
\def\widebarfactor{2.0}  % ratio of the wide and narrow bars
\def\three{3.0}
\def\four{4.0}
\def\spacebarfactor{2.5} % ratio of inter-symbol space to the narrow bar 
\def\thinbarfactor{0.1}  % thinning factor for black bars
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\def\barcodeB{\@Bstringfalse\@@barcodeB}
\def\BarcodeB{\@Bstringtrue\@@barcodeB}
\def\@@barcodeB#1{%
 \@BH=\barheight
 \@BN=\barunit
 \@BW=\widebarfactor\barunit
 \@BX=\three\barunit
 \@BY=\four\barunit
 \@BS=\spacebarfactor\barunit
 \@BT=\thinbarfactor\barunit
 \if@Bstring
  \let\@Bsize=\small%
  \ifdim\barunit<0.3mm\let\@Bsize=\footnotesize%
  \ifdim\barunit<0.2mm\let\@Bsize=\scriptsize%
 \fi\fi\fi
 \@bsheight=\barheight\relax
 {\@Bsize\global\advance\@bsheight -0.7\normalbaselineskip}
 \@a=0
 \@b=0
 \@c=104
 \@d=0
 \setbox\@tempboxa=\hbox{\B@cv}%
 \mbox{\expandafter\box\@tempboxa\B@geteachchar#1\end}%
}
\def\B@LETBLANK:{\let\B@letblank= }\B@LETBLANK: 
\def\B@geteachchar{\futurelet\B@nextletchar\B@nextdefchar}
\def\B@nextdefchar#1{%
    \ifx #1\end \let\next=\relax  % the title is finished
 \@BH=\barheight
 \@d=\@c%
 \divide\@d 103%
 \multiply\@d 103%
 \advance\@c -\@d%
 \advance\@c 1%
 \setbox\@tempboxa=\hbox{\csname B@\romannumeral\@c\endcsname}%
 \box\@tempboxa%
 \setbox\@tempboxa=\hbox{\Bn@i}%
 \box\@tempboxa%
    \else
      \if@Bstring
        \@BH=\@bsheight
      \else
        \@BH=\barheight
      \fi
      \ifx \B@nextletchar\B@letblank\B@charcode{ }\fi
      \B@charcode{#1}%
      \let\next=\B@geteachchar
    \fi \next}
\def\B@charcode#1{\@tempcnta=`#1\relax%
% \ifnum\@tempcnta>96\ifnum\@tempcnta<123\advance\@tempcnta -32\relax\fi\fi%
 \advance\@tempcnta -31%
 \@a=\@tempcnta%
 \advance\@a -1%
 \advance\@b 1%
 \multiply\@a \@b%
 \advance\@c \@a%
  \setbox\@tempboxa=\hbox{\csname B@\romannumeral\@tempcnta\endcsname}%
 \if@Bstring%
  \@tempdima=\wd\@tempboxa%
  \vbox{\@Bsize\advance\baselineskip-0.3\normalbaselineskip%
  \box\@tempboxa\hbox to \@tempdima{\hss\tt #1 \hss}}%
 \else%
  \box\@tempboxa%
 \fi%
}
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\def\barcodeC{\@Bstringfalse\@@barcodeC}
\def\BarcodeC{\@Bstringtrue\@@barcodeC}
\def\@@barcodeC#1{%
 \@BH=\barheight
 \@BN=\barunit
 \@BW=\widebarfactor\barunit
 \@BX=\three\barunit
 \@BY=\four\barunit
 \@BS=\spacebarfactor\barunit
 \@BT=\thinbarfactor\barunit
 \if@Bstring
  \let\@Bsize=\small%
  \ifdim\barunit<0.3mm\let\@Bsize=\footnotesize%
  \ifdim\barunit<0.2mm\let\@Bsize=\scriptsize%
  \fi\fi
  \@bsheight=\barheight\relax
  {\@Bsize\global\advance\@bsheight -0.7\normalbaselineskip}
 \fi
 \@a=0
 \@b=0
 \@c=105
 \@d=0
 \@e=0
 \@f=100
 \setbox\@tempboxa=\hbox{\B@cvi}%
 \mbox{\expandafter\box\@tempboxa\C@geteachchar#1\end}%
}
%\def\B@LETBLANK:{\let\B@letblank= }\B@LETBLANK: 
\def\C@geteachchar{\futurelet\C@nextletchar\C@nextdefchar}
\def\C@nextdefchar#1{%
  \ifx #1\end%
    \let\next=\relax% the title is finished
    \ifodd\@b%         the total number of digits is odd: output the last
      \divide\@tempcnta 10\relax
      \@tempcntb=\@tempcnta\relax
      \advance\@tempcnta 17\relax
      \@a=\@tempcnta\relax
      \advance\@a -1\relax
      \advance\@e 1\relax
      \multiply\@f \@e\relax
      \advance\@c \@f\relax
      \advance\@e 1\relax
      \multiply\@a \@e\relax
      \advance\@c \@a\relax
      \@d=\@c\relax
      \divide\@d 103\relax
      \multiply\@d 103\relax
      \advance\@c -\@d\relax
      \advance\@c 1\relax
      \setbox\@tempboxa=\hbox{\B@ci}%
      \if@Bstring%        print the last digit
       \@BH=\@bsheight
       \@tempdima=\wd\@tempboxa%
       \vbox{\@Bsize\advance\baselineskip-0.3\normalbaselineskip%
        \box\@tempboxa\hbox to \@tempdima{\tt\number\@tempcntb\hss}}%
       \@BH=\barheight
      \else%
       \@BH=\barheight
       \box\@tempboxa%
      \fi%
      \setbox\@tempboxa=\hbox{\csname B@\romannumeral\@tempcnta\endcsname}%
      \box\@tempboxa%
      \setbox\@tempboxa=\hbox{\csname B@\romannumeral\@c\endcsname}%
      \box\@tempboxa%         
      \setbox\@tempboxa=\hbox{\Bn@i}%
      \box\@tempboxa%
     \else%           total number of the digits is even
      \@BH=\barheight
      \@d=\@c\relax
      \divide\@d 103\relax
      \multiply\@d 103\relax
      \advance\@c -\@d\relax
      \advance\@c 1\relax
      \setbox\@tempboxa=\hbox{\csname B@\romannumeral\@c\endcsname}%
      \box\@tempboxa%
      \setbox\@tempboxa=\hbox{\Bn@i}%
      \box\@tempboxa%
     \fi%
    \else%           not the last digit
      \if@Bstring
        \@BH=\@bsheight
      \else
        \@BH=12mm
      \fi
      \ifx \C@nextletchar\B@letblank\C@charcode{ }\fi
      \C@charcode{#1}%
      \let\next=\C@geteachchar
    \fi \next}
\def\C@charcode#1{%
\advance\@b 1\relax
\ifodd\@b%       just store the number
 \@tempcnta=`#1\relax
 \advance\@tempcnta -48\relax
 \multiply\@tempcnta 10\relax
\else%           output the two digits
 \advance\@e 1\relax
 \@a=`#1\relax
 \advance\@a -48\relax
 \advance\@tempcnta \@a\relax
 \@a=\@tempcnta\relax
 \@tempcntb=\@tempcnta\relax
 \advance\@tempcnta 1\relax
 \multiply\@a \@e\relax
 \advance\@c \@a\relax
 \setbox\@tempboxa=\hbox{\csname B@\romannumeral\@tempcnta\endcsname}%
 \if@Bstring%
  \@tempdima=\wd\@tempboxa%
  \vbox{\@Bsize\advance\baselineskip-0.3\normalbaselineskip%
  \ifnum\@tempcntb > 9
   \box\@tempboxa\hbox to \@tempdima{\hss\tt\number\@tempcntb\hss}%
  \else
   \box\@tempboxa\hbox to \@tempdima{\hss\tt0\number\@tempcntb\hss}%
  \fi}%
 \else%
  \box\@tempboxa%
 \fi%
\fi%
}
%
\def\@barcode#1#2#3#4#5#6{%
 \@tempdima=#1\relax\advance\@tempdima -\@BT\relax%
 \vrule width \@tempdima height \@BH%
 \@tempdima=#2\relax\advance\@tempdima \@BT\relax%
 \hskip \@tempdima%
 \@tempdima=#3\relax\advance\@tempdima -\@BT\relax%
 \vrule width \@tempdima height \@BH%
 \@tempdima=#4\relax\advance\@tempdima \@BT\relax%
 \hskip \@tempdima%
 \@tempdima=#5\relax\advance\@tempdima -\@BT\relax%
 \vrule width \@tempdima height \@BH%
 \@tempdima=#6\relax\advance\@tempdima \@BT\relax%
 \hskip \@tempdima%
}
%
\def\B@i     {\@barcode\@BW\@BN\@BW\@BW\@BW\@BW}
\def\B@ii    {\@barcode\@BW\@BW\@BW\@BN\@BW\@BW}
\def\B@iii   {\@barcode\@BW\@BW\@BW\@BW\@BW\@BN}
\def\B@iv    {\@barcode\@BN\@BW\@BN\@BW\@BW\@BX}
\def\B@v     {\@barcode\@BN\@BW\@BN\@BX\@BW\@BW}
\def\B@vi    {\@barcode\@BN\@BX\@BN\@BW\@BW\@BW}
\def\B@vii   {\@barcode\@BN\@BW\@BW\@BW\@BN\@BX}
\def\B@viii  {\@barcode\@BN\@BW\@BW\@BX\@BN\@BW}
\def\B@ix    {\@barcode\@BN\@BX\@BW\@BW\@BN\@BW}
\def\B@x     {\@barcode\@BW\@BW\@BN\@BW\@BN\@BX}
\def\B@xi    {\@barcode\@BW\@BW\@BN\@BX\@BN\@BW}
\def\B@xii   {\@barcode\@BW\@BX\@BN\@BW\@BN\@BW}
\def\B@xiii  {\@barcode\@BN\@BN\@BW\@BW\@BX\@BW}
\def\B@xiv   {\@barcode\@BN\@BW\@BW\@BN\@BX\@BW}
\def\B@xv    {\@barcode\@BN\@BW\@BW\@BW\@BX\@BN}
\def\B@xvi   {\@barcode\@BN\@BN\@BX\@BW\@BW\@BW}
\def\B@xvii  {\@barcode\@BN\@BW\@BX\@BN\@BW\@BW}
\def\B@xviii {\@barcode\@BN\@BW\@BX\@BW\@BW\@BN}
\def\B@xix   {\@barcode\@BW\@BW\@BX\@BW\@BN\@BN}
\def\B@xx    {\@barcode\@BW\@BW\@BN\@BN\@BX\@BW}
\def\B@xxi   {\@barcode\@BW\@BW\@BN\@BW\@BX\@BN}
\def\B@xxii  {\@barcode\@BW\@BN\@BX\@BW\@BN\@BW}
\def\B@xxiii {\@barcode\@BW\@BW\@BX\@BN\@BN\@BW}
\def\B@xxiv  {\@barcode\@BX\@BN\@BW\@BN\@BX\@BN}
\def\B@xxv   {\@barcode\@BX\@BN\@BN\@BW\@BW\@BW}
\def\B@xxvi  {\@barcode\@BX\@BW\@BN\@BN\@BW\@BW}
\def\B@xxvii {\@barcode\@BX\@BW\@BN\@BW\@BW\@BN}
\def\B@xxviii {\@barcode\@BX\@BN\@BW\@BW\@BN\@BW}
\def\B@xxix {\@barcode\@BX\@BW\@BW\@BN\@BN\@BW}
\def\B@xxx  {\@barcode\@BX\@BW\@BW\@BW\@BN\@BN}
\def\B@xxxi {\@barcode\@BW\@BN\@BW\@BN\@BW\@BX}
\def\B@xxxii {\@barcode\@BW\@BN\@BW\@BX\@BW\@BN}
\def\B@xxxiii    {\@barcode\@BW\@BX\@BW\@BN\@BW\@BN}
\def\B@xxxiv {\@barcode\@BN\@BN\@BN\@BX\@BW\@BX}
\def\B@xxxv {\@barcode\@BN\@BX\@BN\@BN\@BW\@BX}
\def\B@xxxvi {\@barcode\@BN\@BX\@BN\@BX\@BW\@BN}
\def\B@xxxvii  {\@barcode\@BN\@BN\@BW\@BX\@BN\@BX}
\def\B@xxxviii   {\@barcode\@BN\@BX\@BW\@BN\@BN\@BX}
\def\B@xxxix {\@barcode\@BN\@BX\@BW\@BX\@BN\@BN}
\def\B@xl   {\@barcode\@BW\@BN\@BN\@BX\@BN\@BX}
\def\B@xli  {\@barcode\@BW\@BX\@BN\@BN\@BN\@BX}
\def\B@xlii {\@barcode\@BW\@BX\@BN\@BX\@BN\@BN}
\def\B@xliii {\@barcode\@BN\@BN\@BW\@BN\@BX\@BX}
\def\B@xliv {\@barcode\@BN\@BN\@BW\@BX\@BX\@BN}
\def\B@xlv  {\@barcode\@BN\@BX\@BW\@BN\@BX\@BN}
\def\B@xlvi {\@barcode\@BN\@BN\@BX\@BN\@BW\@BX}
\def\B@xlvii {\@barcode\@BN\@BN\@BX\@BX\@BW\@BN}
\def\B@xlviii {\@barcode\@BN\@BX\@BX\@BN\@BW\@BN}
\def\B@xlix {\@barcode\@BX\@BN\@BX\@BN\@BW\@BN}
\def\B@l    {\@barcode\@BW\@BN\@BN\@BX\@BX\@BN}
\def\B@li   {\@barcode\@BW\@BX\@BN\@BN\@BX\@BN}
\def\B@lii  {\@barcode\@BW\@BN\@BX\@BN\@BN\@BX}
\def\B@liii {\@barcode\@BW\@BN\@BX\@BX\@BN\@BN}
\def\B@liv  {\@barcode\@BW\@BN\@BX\@BN\@BX\@BN}
\def\B@lv   {\@barcode\@BX\@BN\@BN\@BN\@BW\@BX}
\def\B@lvi  {\@barcode\@BX\@BN\@BN\@BX\@BW\@BN}
\def\B@lvii {\@barcode\@BX\@BX\@BN\@BN\@BW\@BN}
\def\B@lviii {\@barcode\@BX\@BN\@BW\@BN\@BN\@BX}
\def\B@lix  {\@barcode\@BX\@BN\@BW\@BX\@BN\@BN}
\def\B@lx   {\@barcode\@BX\@BX\@BW\@BN\@BN\@BN}
\def\B@lxi  {\@barcode\@BX\@BN\@BY\@BN\@BN\@BN}
\def\B@lxii {\@barcode\@BW\@BW\@BN\@BY\@BN\@BN}
\def\B@lxiii {\@barcode\@BY\@BX\@BN\@BN\@BN\@BN}
\def\B@lxiv {\@barcode\@BN\@BN\@BN\@BW\@BW\@BY}
\def\B@lxv  {\@barcode\@BN\@BN\@BN\@BY\@BW\@BW}
\def\B@lxvi {\@barcode\@BN\@BW\@BN\@BN\@BW\@BY}
\def\B@lxvii{\@barcode\@BN\@BW\@BN\@BY\@BW\@BN}
\def\B@lxviii {\@barcode\@BN\@BY\@BN\@BN\@BW\@BW}
\def\B@lxix {\@barcode\@BN\@BY\@BN\@BW\@BW\@BN}
\def\B@lxx  {\@barcode\@BN\@BN\@BW\@BW\@BN\@BY}
\def\B@lxxi {\@barcode\@BN\@BN\@BW\@BY\@BN\@BW}
\def\B@lxxii {\@barcode\@BN\@BW\@BW\@BN\@BN\@BY}
\def\B@lxxiii    {\@barcode\@BN\@BW\@BW\@BY\@BN\@BN}
\def\B@lxxiv {\@barcode\@BN\@BY\@BW\@BN\@BN\@BW}
\def\B@lxxv {\@barcode\@BN\@BY\@BW\@BW\@BN\@BN}
\def\B@lxxvi {\@barcode\@BW\@BY\@BN\@BW\@BN\@BN}
\def\B@lxxvii    {\@barcode\@BW\@BW\@BN\@BN\@BN\@BY}
\def\B@lxxviii   {\@barcode\@BY\@BN\@BX\@BN\@BN\@BN}
\def\B@lxxix {\@barcode\@BW\@BY\@BN\@BN\@BN\@BW}
\def\B@lxxx {\@barcode\@BN\@BX\@BY\@BN\@BN\@BN}
\def\B@lxxxi {\@barcode\@BN\@BN\@BN\@BW\@BY\@BW}
\def\B@lxxxii    {\@barcode\@BN\@BW\@BN\@BN\@BY\@BW}
\def\B@lxxxiii   {\@barcode\@BN\@BW\@BN\@BW\@BY\@BN}
\def\B@lxxxiv    {\@barcode\@BN\@BN\@BY\@BW\@BN\@BW}
\def\B@lxxxv {\@barcode\@BN\@BW\@BY\@BN\@BN\@BW}
\def\B@lxxxvi    {\@barcode\@BN\@BW\@BY\@BW\@BN\@BN}
\def\B@lxxxvii   {\@barcode\@BY\@BN\@BN\@BW\@BN\@BW}
\def\B@lxxxviii  {\@barcode\@BY\@BW\@BN\@BN\@BN\@BW}
\def\B@lxxxix    {\@barcode\@BY\@BW\@BN\@BW\@BN\@BN}
\def\B@xc   {\@barcode\@BW\@BN\@BW\@BN\@BY\@BN}
\def\B@xci  {\@barcode\@BW\@BN\@BY\@BN\@BW\@BN}
\def\B@xcii {\@barcode\@BY\@BN\@BW\@BN\@BW\@BN}
\def\B@xciii {\@barcode\@BN\@BN\@BN\@BN\@BY\@BX}
\def\B@xciv {\@barcode\@BN\@BN\@BN\@BX\@BY\@BN}
\def\B@xcv  {\@barcode\@BN\@BX\@BN\@BN\@BY\@BN}
\def\B@xcvi {\@barcode\@BN\@BN\@BY\@BN\@BN\@BX}
\def\B@xcvii {\@barcode\@BN\@BN\@BY\@BX\@BN\@BN}
\def\B@xcviii {\@barcode\@BY\@BN\@BN\@BN\@BN\@BX}
\def\B@xcix {\@barcode\@BY\@BN\@BN\@BX\@BN\@BN}
\def\B@c    {\@barcode\@BN\@BN\@BX\@BN\@BY\@BN}
\def\B@ci   {\@barcode\@BN\@BN\@BY\@BN\@BX\@BN}
\def\B@cii  {\@barcode\@BX\@BN\@BN\@BN\@BY\@BN}
\def\B@ciii {\@barcode\@BY\@BN\@BN\@BN\@BX\@BN}
\def\B@civ  {\@barcode\@BW\@BN\@BN\@BY\@BN\@BW}
\def\B@cv   {\@barcode\@BW\@BN\@BN\@BW\@BN\@BY}
\def\B@cvi  {\@barcode\@BW\@BN\@BN\@BW\@BX\@BW}

\def\@barcoden#1#2#3#4#5#6#7{%
 \@tempdima=#1\relax\advance\@tempdima -\@BT\relax%
 \vrule width \@tempdima height \@BH%
 \@tempdima=#2\relax\advance\@tempdima \@BT\relax%
 \hskip \@tempdima%
 \@tempdima=#3\relax\advance\@tempdima -\@BT\relax%
 \vrule width \@tempdima height \@BH%
 \@tempdima=#4\relax\advance\@tempdima \@BT\relax%
 \hskip \@tempdima%
 \@tempdima=#5\relax\advance\@tempdima -\@BT\relax%
 \vrule width \@tempdima height \@BH%
 \@tempdima=#6\relax\advance\@tempdima \@BT\relax%
 \hskip \@tempdima%
 \@tempdima=#7\relax\advance\@tempdima -\@BT\relax%
 \vrule width \@tempdima height \@BH%
 }

\def\Bn@i  {\@barcoden\@BW\@BX\@BX\@BN\@BN\@BN\@BW}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\endinput
