繁体   English   中英

将 PDF 文件导入 XeLaTeX 会出现“pdf_link_obj():传递无效对象”错误

[英]Import PDF file into XeLaTeX gives "pdf_link_obj(): passed invalid object" error

我正在尝试使用\\includepdf{xyz.pdf}将 PDF 导入 XeLaTeX。 文件xyz.pdf是由 Xerox 5755 机器创建的扫描文件,PDF 版本为 1.3。

我得到的错误是:

** WARNING ** No valid name object found.
   ** WARNING ** Could not find a value in dictionary object.
   ** WARNING ** Didn't find "endobj".
   ** ERROR ** pdf_link_obj(): passed invalid object.

我尝试通过运行pdftk xyz.pdf output xyz2.pdf来规范化 PDF,这确实解决了问题——但仅适用于某些 PDF 文件,这些文件pdftk修复的文件与未修复的文件之间没有明显的关系。 总是有一些使用pdftk规范化的文件继续显示与未规范化文件完全相同的错误。

我已经尝试寻找解决这个问题的方法并提出了这个线程: XeLaTeX questions with includegraphics ,这表明可以通过使用-output-driver=xdv2pdf或使用pdf(la)tex来解决问题. 唉,我不能使用 PdfLaTeX,因为我需要 XeLaTeX 的 unicode 支持。 同样,我使用的是 Linux,所以我不能使用 Mac 特定的xdv2pdf

对于 XeLaTeX 无法加载这些 PDF 的原因以及如何“修复”这些 PDF 的任何想法和意见,我将非常感激。

亲切的问候,

布赖恩

Luatex(Pdftex的前身)也原生支持Unicode。 当您尝试使用lualatex编译时会发生什么?

我在Debian上使用XeLaTeX时遇到了相同的问题。 从LibreOffice导出的PDF已正确导入,而包括由我的打印机创建的PDF扫描失败。

我可以通过重新使用Ghostscript修改PDF来解决此问题。 在Linux上,这可以通过以下方式完成:

gs -o repaired.pdf -sDEVICE=pdfwrite dPDFSETTINGS=/prepress corrupted.pdf

(来源: https : //superuser.com/a/282056 ,还有用于Windows的Ghostscript命令)

用XeLaTeX导入“已修复”的PDF效果很好。

我当时使用\\ includegraphics {},并遇到了一个类似的pdf问题(通过使用Win2pdf从Excel打印文件创建)。 我使用Adobe Reader打开pdf并保存了副本。 然后使用\\ includgraphics {}和xelatex编译器成功合并了该副本。

我有相同的错误输出:


(/usr/share/texlive/texmf-dist/tex/latex/pdflscape/pdflscape.sty
(/usr/share/texlive/texmf-dist/tex/latex/graphics/lscape.sty)) [1] [2]
Chapter 1.
[3] [4]
Chapter 2.
[5] [6]
Chapter 3.
[7] [8] [9] [10]
Chapter 4.
[11]
Overfull \hbox (4.64401pt too wide) in paragraph at lines 182--189
[]\TU/Inter(0)/m/n/10 This makes the use of \TU/Inter(0)/m/it/10 CTRL \TU/Inter
(0)/m/n/10 key combinations more ergonomic. 
[12] [13]
Overfull \hbox (2.98775pt too wide) in paragraph at lines 205--212
\TU/Inter(0)/m/n/10 reachable through the OLED menu. Each cell icon corresponds
 
[14] [15] [16]
Chapter 5.
(/usr/share/texlive/texmf-dist/tex/latex/microtype/mt-cmr.cfg)
Overfull \hbox (15.37852pt too wide) in paragraph at lines 251--258
\TU/Inter(0)/m/n/10 for your computer to execute, but also to write programs (s
cripts) 
[17]
xdvipdfmx:fatal: pdf_link_obj(): passed invalid object.

No output PDF file written.

我的乳胶中有问题的页面也使用了pdf数字。

安装 ghostscript 包后问题就消失了(我正在运行 Debian)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM