バグ解消法、お役立ち情報など

mPDF で 縦横混在のPDFを出力する方法

mPDF

mPDFは、PHPでPDFを扱うためのライブラリです。

ドキュメント

今回は、このmPDFを使用して縦横混在のPDFを出力する方法についてお伝えします。

以下、手順です。

1. 1ページ目を作成

まずは、横向きで1ページ目を作成します。

(フォントなどはご自身の環境に合わせて読み替えてください)

$mpdf = new \Mpdf\Mpdf([ 'fontdata' => [ 'ipg' => [ 'R' => 'ipaexg.ttf' // ゴシック体 ] ], 'mode' => 'ja', 'format' => 'A4-L', ]); $fileName = 'sample_' . date('Ymd') . '.pdf';

これで、横向きの1ページ目ができました。

2. 2ページ目を作成

では、縦向きの2ページ目を作成します。

// P で縦向きを指定 $mpdf->AddPage('P');

3. 出力

$response = new Response(); echo $response->withType('pdf') ->withHeader('Content-Disposition', "attachment;filename*=UTF-8''{$fileName}") ->withStringBody($mpdf->Output('', 'S'));

このように、AddPageメソッドの引数にPまたはLを指定することで縦横混在のPDFを出力することができます。

バグ解消法、お役立ち情報など