是否有一个好的用于生成条形码的 LaTeX 包?

是否有一个好的用于生成条形码的 LaTeX 包?

我正在寻找一个好的 LaTeX 包来生成一维条形码,它具有以下属性。

  1. 它不需要任何外部脚本或互联网连接即可工作。
  2. 它可以轻松编译为 pdf(因此无需 pstricks 黑客技术)。

有这样的包吗?如果它可以生成二维码,那就更好了。

答案1

我想尝试解决这个问题,因为我看到过许多基于专用字体的解决方案,我想:“\vrule既然TeX已经很好了,为什么还要使用字体呢?”。因此(用纯文本来说):

\def\barcode#1#2#3#4#5#6#7{\begingroup%
  \dimen0=0.1em
  \def\stack##1##2{\oalign{##1\cr\hidewidth##2\hidewidth}}%
  \def\0##1{\kern##1\dimen0}%
  \def\1##1{\vrule height10ex width##1\dimen0}%
  \def\L##1{\ifcase##1\bc3211##1\or\bc2221##1\or\bc2122##1\or\bc1411##1%
    \or\bc1132##1\or\bc1231##1\or\bc1114##1\or\bc1312##1\or\bc1213##1%
    \or\bc3112##1\fi}%
  \def\R##1{\bgroup\let\next\1\let\1\0\let\0\next\L##1\egroup}%
  \def\G##1{\bgroup\let\bc\bcg\L##1\egroup}% reverse
  \def\bc##1##2##3##4##5{\stack{\0##1\1##2\0##3\1##4}##5}%
  \def\bcg##1##2##3##4##5{\stack{\0##4\1##3\0##2\1##1}##5}%
  \def\bcR##1##2##3##4##5##6{\R##1\R##2\R##3\R##4\R##5\R##6\11\01\11\09%
    \endgroup}%
  \stack{\09}#1\11\01\11\L#2%
  \ifcase#1\L#3\L#4\L#5\L#6\L#7\or\L#3\G#4\L#5\G#6\G#7%
    \or\L#3\G#4\G#5\L#6\G#7\or\L#3\G#4\G#5\G#6\L#7%
    \or\G#3\L#4\L#5\G#6\G#7\or\G#3\G#4\L#5\L#6\G#7%
    \or\G#3\G#4\G#5\L#6\L#7\or\G#3\L#4\G#5\L#6\G#7%
    \or\G#3\L#4\G#5\G#6\L#7\or\G#3\G#4\L#5\G#6\L#7%
  \fi\01\11\01\11\01\bcR}

\barcode 7046260816138
\bye

看起来像:ean13条形码

答案2

随着pst-barcode-包裹你可以制作各种条形码。例如,

\documentclass{minimal}
\usepackage{pst-barcode}

\begin{document}
\begin{pspicture}(3.5,1.2in)
    \psbarcode{12345678}{includetext inkspread=0.5}{ean8}
\end{pspicture}
\end{document}

例子

缺点当然是你必须经过latex→→dvips路线ps2pdf进行编译,所以它不能满足你的要求(2)。

[我自己没用过pst-barcode,但我刚刚看到Michael Underwood 的回答并认为它也适用于此处,并且可能对某些人有用。

答案3

看一下排版条形码在 TeX Catalogue Online 中。它列出了一些软件包。

答案4

有以下ean13isbn包:http://www.ctan.org/pkg/ean13isbn。然后是 GS1 包:http://www.ctan.org/pkg/gs1。两者都可以生成 EAN8 和 EAN13。但我完全失望的是,这两个包都使用位图字体(而不是轮廓字体)来表示条形码下方的数字。如果在 GS1 包的情况下,我关闭了 ocrb 字体的使用,结果看起来很糟糕。数字太接近条形码了。ean13isbn 包似乎没有很多选项。而且我真的不知道如何设置不同的字体。然而,对于这两个包,条形码本身不是位图,就打印质量而言,这应该是件好事。

然后我们有这个在线 ISBN 条形码生成器:http://bookow.com/resources.php。这是我目前发现的最好的一个,因为 (1) 它生成带有矢量图形的 PDF,并且 (2) PDF 包含文本作为轮廓。PDF 中没有任何像素。但是,文本字体未嵌入 PDF 中。如果有人剪掉 ISBN 文本,我敢肯定它可以被滥用于 EAN13 代码。

相关内容