1

私は、TCPDF と FPDI を使用して新しい PDF を作成しており、1 ページ全体に (アルファ透明度を使用して) 画像を追加したいと考えています。奇妙なことに、TCPDF は PDF を作成することもあれば、エラーなしでクラッシュすることもあります (つまり、標準の応答ヘッダー (text/html の場合) 以外に出力をまったく生成しません)。それは常に、画像に渡すサイズに依存します。関数:

       $this->Image($markupfile,0,0,120, 50, 'png', '', '', true, 300);

動作しますが(画像が小さすぎますが)、ただし

       $this->Image($markupfile,0,0,1200, 50, 'png', '', '', true, 300);

ではない。元の寸法は width: 968px です。高さ: 685px;

    require_once "config/sessions_class.php";
    require_once "config/sanitation_class.php";
    require_once('tcpdf/tcpdf.php');
    require_once('tcpdf/config/lang/eng.php');
    require_once('FPDF/fpdi.php');
    require_once('config/settings.php');
    require_once('phpfpm/pdfVersion.php');



 class concatPdf extends FPDI{

     ....

    function concat() {
                $dir = $this->dir;
                $pagecount = $this->setSourceFile($dir.$this->file);
                for ($i = 1; $i <= $pagecount; $i++) {
                    $this->_tplIdx = $this->importPage($i);
                    $s = $this->getTemplatesize($this->_tplIdx);
                    $this->AddPage($s['w'] > $s['h'] ? 'L' : 'P', array($s['w'], $s['h']));
                    $this->useTemplate($this->_tplIdx);
                    $markupfile = "markups/".$this->pdfid."_".$i.".png";
                    if ( file_exists  ($markupfile)) {
                           $this->Image($markupfile,0,0,1020, 50, 'png', '', '', true, 300);

                    }

                 }

     }

     ....

  }



    $filename;
    $pdf = new concatPdf();

    $pdf->setImageScale(1.53);
    $pdf->SetAutoPageBreak(true, 40);
    $pdf->setFontSubsetting(false);
    $pdf->SetMargins(PDF_MARGIN_LEFT, 40, PDF_MARGIN_RIGHT);

    $pdf->concat();

    $pdf->Output('ed_'."filename", 'I');
4

0 に答える 0