私は、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');