FPDI setSourceFile выдает исключение - PullRequest
0 голосов
/ 26 апреля 2018

$pagecount = $pdf->setSourceFile($pdffile);

В приведенной выше строке выдается исключение "Этот документ ([путь к файлу]), вероятно, использует метод сжатия, который не поддерживается бесплатным анализатором, поставляемым с FPDI."

Это происходит несмотря на:

  • существующий файл (я зарегистрировал $ pdffile, чтобы убедиться, что путь указан правильно, и загрузил pdf из этого места, чтобы убедиться в правильности)
  • путь к файлубудучи абсолютным (путь начинается с корня сервера вплоть до местоположения файла)
  • версия pdf - 1,3
  • разрешения для папки и файла этого файла 777
  • он работал нормально в течение последних нескольких дней (я предполагаю, что разрешения были выброшены при некотором развертывании, но я могу найти где и почему)

Есть мысли?спасибо.

FPDI: 1.6.1 TCPDF: 6.2.13

1 Ответ

0 голосов
/ 02 мая 2018

В результате возникла проблема с версией или некоторым повреждением всех PDF-файлов.Это до сих пор загадка, так как у нас есть сотни PDF-файлов, которые работали раньше, тогда ни один из них не работал.Я скачал 20 или около того, чтобы проверить версии, и все они отображали PDF 1.4 или 1.3 при открытии в Acrobat.Они также могли открываться без сообщений об ошибках в любом считывателе.

После нескольких часов этого я, наконец, просто начал с нуля и прошелся по каждой части снова, предполагая, что ничего не работает.Когда я добрался до PDF, я запустил его через онлайн-конвертер и заново загрузил файл, и PDF работал.Я попробовал еще много PDF-файлов, и все они работали.Поэтому мы установили GhostScript и начали запускать все PDF-файлы через GhostScript на лету.Все PDF-файлы работают сейчас.

Таким образом, мой единственный вывод заключается в том, что где-то при перемещении файлов все PDF-файлы в этом каталоге были повреждены.

...