Я разработал систему PHP с использованием MAC, поэтому эта система должна печатать PDF, поэтому я использовал mPDF.Система работает ОТЛИЧНО на MAC, но в Windows она выдает «Ошибка формата: не PDF или поврежден в Windows» для каждого создаваемого PDF-файла.
Поэтому я сделал следующее:
- Удалил все файлы / папки, которые установлены с
composer require mpdf/mpdf
и переустановил mpdf с помощью Composer, на компьютере Windows (я думал, что это проблема с платформой) - Выполнил шаги здесь , чтобы изменить разрешения и изменил разрешения для всей папки вендора на 775
- , попытался вводить текст html по крупицам, чтобы выяснить, в чем проблема, но страница слишком велика для этого (кромесистема печатает с разных страниц - все выдают одну и ту же ошибку.)
текст по умолчанию работает нормально, следующее:
<?php
$path = __DIR__;
require_once $path . '/vendor/autoload.php';
$html = "Hello World";
try {
$mpdf = new \Mpdf\Mpdf([
'margin_left' => 20,
'margin_right' => 15,
'margin_top' => 68, //48
'margin_bottom' => 25,
'margin_header' => 30, //10
'margin_footer' => 10
]);
$mpdf->SetProtection(array('print'));
$mpdf->SetTitle("Report");
$mpdf->SetAuthor("Vincent H Guyo.");
$mpdf->SetWatermarkImage("logo.jpg");
$mpdf->showWatermarkImage = true;
$mpdf->watermark_font = 'DejaVuSansCondensed';
$mpdf->watermarkTextAlpha = 0.1;
$mpdf->SetDisplayMode('fullpage');
$mpdf->WriteHTML($html);
$mpdf->Output();
} catch (\Mpdf\MpdfException $e) { // Note: safer fully qualified exception name used for catch
// Process the exception, log, print etc.
echo $e->getMessage();
}
?>
Итакна этом все работает отлично, в тот момент, когда я пытаюсь изменить переменную $ html на то, что я хочу, вот когда возникает проблема.
Любая помощь или указания очень приветствуются и необходимы.Пожалуйста, помогите.
Спасибо заранее.