Linux 上 /home/ 目录之外的 auto-pst-pdf 行为

Linux 上 /home/ 目录之外的 auto-pst-pdf 行为

我搜索并找到了很多关于使用 auto-pst-pdf 的问题和答案,但到目前为止,它们都没有帮助到我。我的问题是,我正在生成一个 code 39 条形码,它并不总是出现在最终的 pdf 中。我结合使用了 LaTeX 和 Velocity,在 Linux 系统上的 Java 服务器环境中运行。

首先,.tex 文件中包含的包是:

\usepackage{helvet}
\usepackage[a4paper, landscape, margin=0.25in]{geometry}
\usepackage{graphicx}
\usepackage{multirow}
\usepackage{amssymb}
\usepackage{pst-barcode}
\usepackage{auto-pst-pdf}
\usepackage{xparse}
\usepackage{seqsplit}
\usepackage{array}
\usepackage{longtable, tabu}
\usepackage{fancyhdr}
\usepackage{multicol}
\usepackage[english]{babel}
\usepackage{xstring}
\usepackage{tikz}
% the next three packages were added after reading some auto-pst-pdf 
% documentation and have had no effect
\usepackage{ifplatform}
\usepackage{pst-pdf}
\usepackage{xkeyval}

条形码生成如下:

\begin{pspicture}
  \psbarcode{${workTicketId}}{includetext height=0.375}{code39}
\end{pspicture}

PdfLatex 由 Java 进程使用以下命令调用:

pdflatex -shell-escape -enable-write18 template.tex

生成了结果 pdf,只是没有条形码。PdfLatex 在 template.tex 文件的目录中启动。包含 template.tex 文件本地所有文件的目录位于 /tmp/report/。启动 java 进程的用户帐户对 /tmp/report/ 目录具有完全访问权限和所有权。stout.log 文件包含警告,如果 auto-pst-pdf 出现问题,这些警告似乎总是会出现:

-------------------------------------------------
auto-pst-pdf: End auxiliary LaTeX compilation
-------------------------------------------------

Package auto-pst-pdf Warning: 
    Creation of template-autopp.dvi failed.
This warning occured on input line 124.

Package auto-pst-pdf Warning: 
    Could not create template-pics.pdf. Auxiliary files not deleted.
This warning occured on input line 124.

最后,如果我将文件从 /tmp/report/ 目录移动到 /home/me/report/ 并运行相同的 PdfLatex 命令 - auto-pst-pdf 会正确生成条形码,并且生成的 pdf 包含所述条形码。在用户 /home/ 目录中生成报告不是一个选项。

有什么建议吗?有人发现我遗漏了什么吗?

答案1

\documentclass{article}
\usepackage{pst-barcode}
\usepackage[crop=off]{auto-pst-pdf}
\begin{document}

\begin{pspicture}(0,-0.1in)(2.3in,0.5in)
  \psbarcode{ABC12345}{includetext height=0.375}{code39}
\end{pspicture}

\end{document}

如果有效,请尝试删除[crop=off]

相关内容