Подтвердить что ты не робот

Ошибка 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?

4b9b3361

Ответ 1

Да, точно библиотека FPDF поддерживает только PDF версии 1.4 и меньше. Поэтому, чтобы исходить из этой проблемы, используйте GhostScript. Этот script позволяет динамически изменять версии 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.

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

Ответ 2

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

Ответ 3

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

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

Ref. Редактирование PDF файлов с защитой паролем с помощью fpdi

Ответ 4

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

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

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

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

https://docupub.com/pdfconvert/

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

Ответ 5

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

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

Ответ 6

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

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

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

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

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

Ответ 7

У меня была та же проблема, что 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