pdflatex“命令标记太长”错误

pdflatex“命令标记太长”错误

我在尝试使用 pdflatex 编译 latex 文档时遇到此错误。我已将 tex 文件精简为以下格式:

\documentclass[letterpaper,oneside,12pt]{article}
\usepackage[letterpaper,textwidth=7.5in,textheight=9.5in]{geometry}
\usepackage{graphicx}

\begin{document}
\begin{figure}[H]
    \includegraphics{figures/Jan25/svdDir_svdCompare1.pdf}
\end{figure}

\end{document}

这产生了我想要的最终输出,但仍然会出现错误,这非常烦人,因为我使用 vim-latex 并且该错误导致它将我带到另一个窗口,然后每次编译时我都必须关闭该窗口并切换回 tex 文件。

pdf 文件是从 Matlab 图形生成的;这个过程我每天都会做几次,没有任何问题。我确实尝试过重新生成文件,但仍然会出现该错误。我也尝试过复制并重命名它,但这也没有任何改变。

答案1

我在 Debian Wheezy 上遇到了同样的问题。在数百个动态生成的eps图形中,有一些导致了错误

Command token too long

这是一个已知问题在 PDF 渲染库中波普勒eps。显然,当中的第一个对象不是流时就会出现错误,错误消息本身可以安全地被忽略。

但当使用,这并非易事。有一些工具可以忽略,但它对我不起作用。

错误消息已从波普勒在版本 0.22 中,但是我使用的版本仍是0.19版本。

最终为我解决这个问题的方法是打开eps有问题的文件inkscape并再次保存,而不进行任何更改。

答案2

您的图片尺寸是多少?该 PDF 文件可能大于允许的宽度。您尝试过调整图片大小吗?例如:

\documentclass[letterpaper,oneside,12pt]{article}
\usepackage[letterpaper,textwidth=7.5in,textheight=9.5in]{geometry}
\usepackage{graphicx}

\begin{document}
\begin{figure}[H]
    \includegraphics[width=5in,height=1in]{figures/Jan25/svdDir_svdCompare1.pdf}
\end{figure}

\end{document}

答案3

很可能您包含的 PDF 不知何故损坏了。pdftex 中唯一会抛出此错误消息的部分似乎是Lexerpoppler读取 PDF 时。您能把 PDF 放在网上某个地方以供检查吗?

答案4

您可以通过压缩 pdf 来解决此问题:

$ pdftk svdDir_svdCompare1.pdf output svdDir_svdCompare1-compressed.pdf compress

\documentclass[letterpaper,oneside,12pt]{article}
\usepackage[letterpaper,textwidth=7.5in,textheight=9.5in]{geometry}
\usepackage{graphicx}

\begin{document}
\begin{figure}[H]
    \includegraphics{figures/Jan25/svdDir_svdCompare1-compressed.pdf}
\end{figure}

\end{document}

相关内容