Изменение масштаба вставленного PDF с использованием FPDI в переполнении стека

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

Использование библиотеки FPDI работает нормально, за исключением случаев, когда вставленный PDF шире, чем ширина A4, он не масштабируется.
В документации я нашел 2 примера того, как это сделать, но ни один из них не дает:

  1. Первый пример

    $varPageId = $objPDF->ImportPage($intPageNumber);
    $varTemplateSize = $objPDF->getTemplatesize($varPageId);
    $objPDF->AddPage(
    $varTemplateSize['orientation']
    , $varTemplateSize
    );
    $objPDF->useImportedPage($varPageId);
    
  2. Второй пример

    $varPageId = $objPDF->ImportPage($intPageNumber);
    $objPDF->AddPage();
    $objPDF->useTemplate(
    $varPageId
    , ['adjustpageSize' => true]
    );
    

Кто-нибудь знает, как я могу убедиться, что вставленный PDF-файл будет перемасштабирован и все содержимое будет отображаться в новом отредактированном PDF-файле?

Заранее спасибо!

0

Решение

Работает как положено. Вот реальный пример с использованием следующего кода:

<?php

require_once 'vendor/autoload.php';

$pdf = new \setasign\Fpdi\TcpdfFpdi();

$pageCount = $pdf->setSourceFile('p.pdf');
for ($pageNo = 1; $pageNo <= $pageCount; $pageNo++) {
$pageId = $pdf->importPage($pageNo);
$s = $pdf->getTemplatesize($pageId);
$pdf->AddPage($s['orientation'], $s);
$pdf->useImportedPage($pageId);
}

$pdf->Output();
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]