请考虑下面的 MWE,它使用 bookcover.cls 在书籍封面的背面放置 ISBN 条形码
\documentclass[coverwidth=16cm,coverheight=23cm,markcolor=black,spinewidth=0.375in]{bookcover}
\usepackage{pst-barcode}
\begin{document}
\setbookcover{bgcolor}{whole}{color=blue}
\setbookcover{bgtikz}{front}{}
\setbookcover{fgfirst}{back}{
A text ...
\psbarcode{978-85-85818-86-9}{includetext}{isbn}
more text ...
}
\makebookcover
\end{document}
它与“latex”配合使用效果很好,并能生成正确的条形码。但尝试与“xelatex”配合使用时,我们收到以下错误
ABD: EveryShipout initializing macros [1] (./mwe.aux)Error: /undefined in tx@Dict
Operand stack:
Execution stack:
%interp_exit .runexec2 --nostringval-- --nostringval-- --nostringval-- 2 %stopped_push --nostringval-- --nostringval-- --nostringval-- false 1 %stopped_push 1916 1 3 %oparray_pop 1915 1 3 %oparray_pop 1899 1 3 %oparray_pop 1787 1 3 %oparray_pop --nostringval-- %errorexec_pop .runexec2 --nostringval-- --nostringval-- --nostringval-- 2 %stopped_push --nostringval-- 1916 1 3 %oparray_pop 1915 1 3 %oparray_pop 1899 1 3 %oparray_pop 1787 1 3 %oparray_pop --nostringval-- %errorexec_pop .runexec2 --nostringval-- --nostringval-- --nostringval-- 2 %stopped_push --nostringval--
Dictionary stack:
--dict:1179/1684(ro)(G)-- --dict:0/20(G)-- --dict:77/200(L)--
Current allocation mode is local
Current file position is 8
GPL Ghostscript 9.10: Unrecoverable error, exit code 1
pst-barcode 包在文章、书籍、报告等类别下与“xelatex”一起使用时运行良好。问题似乎与 bookcover 使用“textpos”有关,并且已经探讨了它与“pst-barcode”的不兼容性这里过去。在这种情况下,用户层面可以做些什么吗?
答案1
此错误已修复版本 2.2
如果您使用 2.1 版本,那么下一个代码也适用于 xelatex 和 latex:
\documentclass{bookcover}
\usepackage{pst-barcode}
\begin{document}
\makeatletter\TP@absposfalse\makeatother\newgeometry{left=0em,top=-1em} % fixing code
\setbookcover{fgfirst}{back}{
\vfill
\centering
\parbox[b][1in]{1.5in}{\psbarcode{978-85-85818-86-9}{includetext width=1.5 height=1}{isbn}}
\vspace{5mm}
}
\makebookcover
\end{document}