Ошибка FPDF: этот документ (testcopy.pdf), вероятно, использует метод сжатия, который не поддерживается свободным парсером, поставляемым с FPDI

Я запускаю следующий код и даю мне эту ошибку: ошибка FPDF error: This document (testcopy.pdf) probably uses a compression technique which is not supported by the free parser shipped with FPDI. Я использовал другой pdf с именем test.pdf и это работает отлично, но это дает мне ошибку в testcopy.pdf.

Я думаю, что это проблема парсера. Кто-нибудь знает любой другой синтаксический анализатор, который можно использовать с fpdf, чтобы избежать этой ошибки?

Мой код:

 require('fpdf17/fpdf.php'); require('fpdf17/fpdi.php'); // initiate FPDI $pdf = new FPDI(); while (ob_get_level()) ob_end_clean(); header("Content-Encoding: None", true); // set the sourcefile $pagecount = $pdf->setSourceFile('testcopy.pdf'); 

Я хочу разделить PDF в двух pdf-файлах и хочу прикрепить оба PDF-файла в поле прикрепленных файлов. Как сохранить PDF-файл на сервере. Можно ли с помощью fpdf?

Да, точно библиотека FPDF поддерживает только PDF версии 1.4 и меньше. Поэтому, чтобы исходить из этой проблемы, используйте GhostScript . Этот скрипт помогает динамически изменять версии PDF.

(1) Загрузите Ghostscript здесь.

(2) Установите Ghostscript и определите переменную среды PATH.

(3) Затем, используя приведенный ниже PHP-код, измените версию PDF.

 shell_exec( "gswin32 -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dNOPAUSE -dQUIET -dBATCH -sOutputFile=".$new_pdf." ".$old_pdf.""); 

(4) Теперь мы получаем PDF с версией 1.4 в качестве вывода, а затем продолжаем работу с FPDF.

Наслаждайтесь!

Файл должен быть PDF 1.4 (Acrobat 5) или ниже. Если у вас есть Adobe Acrobat Pro, вы можете изменить это с помощью Document-> Decrease File Size.

Вот мой ответ из другой темы:

«Это может быть преодолено путем повторного сохранения шаблона и изменения типа сжатия. В Adobe Acrobat Pro перейдите в« Файл-> Сохранить как »>« Оптимизированный PDF-> Список всплывающих окон »-« Очистка »,« Параметры сжатия объекта »->« Изменить »на« Сжать документ » структура "-> ОК, чтобы сохранить"

Ссылка Редактирование защищенных паролем PDF-файлов с помощью fpdi

Просматривая ответы до сих пор, я не смог решить проблему. Вот почему, и у вас может быть такая же проблема, поэтому этот ответ будет для вас также неоценим.

У меня не было доступа к acrobat, поэтому я не мог понизить версию исходного PDF. Я не был в состоянии купить более новую версию библиотеки, которая обновила шифрование.

В итоге я использовал онлайн-конвертер PDF для перехода на версию 5 (1.4)

Если вы не можете найти его, вот ссылка на полноту.

 https://docupub.com/pdfconvert/ 

(помните, что содержимое ссылки может измениться)

У меня была такая же ошибка, как и вы. Мое решение состояло в том, чтобы преобразовать PDF в более низкую pdf-версию. Чем все работает, как и ожидалось.

Надеюсь, что простой трюк поможет вам!

Для тех, у кого нет каких-либо pro-версий Acrobat:

У меня возникла проблема с новыми версиями Word при попытке использовать функциональность Office для сохранения в PDF. Кажется, что инструмент преобразования PDF, поставляемый в Office, использует более новые форматы. Вот как я это исправил.

  • Установите бесплатную версию NitroPDF (можно работать с другим бесплатным создателем PDF, который можно загрузить)
  • Перейдите в документ Word и выберите «Печать».
  • В параметрах печати вместо вашего принтера выберите «Nitro PDF Creator (Reader 3)» или любую другую текущую версию.
  • Откроется диалоговое окно и вы сможете выбрать, где сохранить файл PDF.

Сохраненная версия была открыта FPDF.

Надеюсь, поможет

У меня была та же проблема, что PDFMerger не работает с определенным PDF. Кажется, что Adobe продолжает обновлять способ сжатия PDF-файлов.

Я нашел решение с Chrome.

 1. Open the PDF file(which does not work with PDFMerger) with Chrome 2. Right Click and Print 3. Change destination as [Save as PDF] 4. This exported PDF file is compatible with PDFMerger