6

を使用して PDF を XeLaTeX にインポートしようとしてい\includepdf{xyz.pdf}ます。このファイルxyz.pdfは、Xerox 5755 マシンで作成されたスキャンで、PDF バージョン 1.3 です。

私が得るエラーは次のとおりです。

   ** 警告 ** 有効な名前オブジェクトが見つかりません。
   ** 警告 ** ディクショナリ オブジェクトに値が見つかりませんでした。
   ** 警告 ** "endobj" が見つかりませんでした。
   ** エラー ** pdf_link_obj(): 無効なオブジェクトが渡されました。

pdftk xyz.pdf output xyz2.pdfを実行して PDF を正規化してみましたが、問題解決しましたが、一部の PDF ファイルのみで、修正されたファイルと修正されていないファイルの間に明確な関係pdftkはありません。pdftkで正規化され、正規化されていないファイルとまったく同じエラーが発生し続けるファイルが常にいくつかあります。

この問題の解決策を探してみたところ、次のスレッドにたどり着きました: includegraphics を使用した XeLaTeX-output-driver=xdv2pdfの問題pdf(la)tex。残念ながら、XeLaTeX の Unicode サポートが必要なため、PdfLaTeX を使用できません。また、Linux を使用しているため、Mac 固有のxdv2pdf.

これらの PDF が XeLaTeX によってロードされない理由と、さらに良いことに、これらの PDF を「修正」する方法について、考えや意見をお寄せいただければ幸いです。

敬具、

ブライアン

4

3 に答える 3

3

Luatex (Pdftex の後継) も Unicode をネイティブにサポートしています。を使用してコンパイルしようとするとどうなりますlualatexか?

于 2010-11-06T10:50:57.683 に答える
1

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 をインポートすると、正常に機能しました。

于 2017-06-15T10:18:37.187 に答える
0

私は \includegraphics{} を使用していましたが、pdf (Win2pdf を使用して Excel からファイルを印刷して作成) で同様の問題が発生しました。Adobe Reader で pdf を開き、コピーを保存しました。このコピーは、\includgraphics{} と xelatex コンパイラを使用して正常に組み込まれました。

于 2017-08-28T03:14:55.087 に答える