Импорт PDF-файл в xelatex предоставляет "pdf_link_obj (): ошибка неверного объекта"
Вопрос
Я пытаюсь импортировать PDF в Xelatex, используя \includepdf{xyz.pdf}
. Анкет Файл 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.
Я пытался нормализовать PDF бегом pdftk xyz.pdf output xyz2.pdf
, и что делает разрешить проблему - но только для некоторых файлов PDF, без явных отношений между этими файлами pdftk
Исправляет, а те, которые это - нет. Всегда есть некоторые файлы, нормализованные с pdftk
Это продолжает демонстрировать той же ошибку, что и ненормализованный файл.
Я попытался найти решение этой проблемы и придумать эту ветку: Проблемы Xelatex с включениями, что предполагает, что проблема может быть решена с помощью -output-driver=xdv2pdf
, или альтернативно с использованием pdf(la)tex
. Анкет Увы, я не могу использовать Pdflatex, потому что мне нужна поддержка Unicode Xelatex. Кроме того, я использую Linux, поэтому я не могу использовать Mac-специфический xdv2pdf
.
Я был бы очень обязан за любые мысли и вклад в то, почему эти PDF не загружаются Xelatex, и - что еще лучше - как можно «исправить» эти PDF.
С уважением,
Брайан
Решение
Lizex (преемник pdftex) также поддерживает Unicode Rative. Что происходит, когда вы пытаетесь компилировать lualatex
?
Другие советы
Я использовал включитьГрафику {} и ударил аналогичную проблему с PDF (созданный путем печати файла из Excel с помощью Win2PDF). Я открыл PDF с помощью Adobe Reader и сохранил копию. Затем копия была успешно включена с использованием includegraphics {} и компилятора xelatex.
У меня была та же проблема, используя xelatex на Debian. PDFS, экспортируемые из LibreOffice, были импортированы должным образом, в том числе SCANS в качестве PDF, которые были созданы моим принтером.
Я мог бы решить эту проблему «Re-CompiLig» PDF с Ghostscript. На Linux это будет сделано с:
gs -o repaired.pdf -sDEVICE=pdfwrite dPDFSETTINGS=/prepress corrupted.pdf
(источник: https://superuser.com/a/282056., есть также команда Ghostscript для Windows)
Импорт «отремонтированного» PDF с Xelatex работал нормально.