PHPプログラミング

最終更新日:
公開日:

レシピ

mPDFライブラリ

mPDFで作成するPDFファイルの設定

mPDFライブラリで作成するPDFについて、用紙のサイズや向き、上下左右の余白、フォントのサイズを指定する方法を解説します。

この記事のポイント

  • PDFが使用する文字コードや言語を指定する
  • 作成するPDFの用紙サイズや向きを変更する
  • PDFの上下左右の余白を調整する

目次

作成するPDFの設定を指定する

今回は、mPDFライブラリで作成するPDFファイルに関する設定を行う方法を解説していきます。

  • 文字コードや言語
  • 用紙サイズ
  • 上下左右の余白
  • 縦向き、横向き

なお、mPDFライブラリはインストールされていることを前提に進めます。
ライブラリのインストールや基本的な使い方については、「mPDFライブラリでPDFファイルを作成する」を参照ください。

設定できる項目

mPDFライブラリはmPDFクラスのインスタンスを生成して使用します。
そのときに用紙サイズなどをパラメータとして指定することで、作成するPDFファイルの設定を行うことができます。
設定できる項目は次の11個。
全て任意なので、指定しなければそれぞれの初期値が自動的に設定されます。

mPDFの設定できる項目

mPDF([
	'mode' => 'utf-8', //文字コードや言語
	'format' => 'B5', //PDFの書類サイズ
	'orientation' => 'P', //書類の向き
	'default_font_size' => 15, //フォントサイズ
	'default_font' => 'meiryo', //フォントの種類
	'margin_left' => 20, //余白(左)
	'margin_right => 20, //余白(右)
	'margin_top => 10, //余白(上)
	'margin_bottom' => 10, //余白(下)
	'margin_header' => 15, //余白(ヘッダー)
	'margin_footer' => 15 //余白(フッター)
]);

文字コードや言語を指定する

文字コードや言語を指定します。
言語は日本語なら「ja」、英語は「en-GB」といったように、作成するPDFで使いたい言語を指定します。

いずれも「mode」に値を渡して設定を行います。
下記は文字コードの指定例です。

$mpdf = new \Mpdf\Mpdf([
	'mode' => 'utf-8' //文字コードを指定
]);

言語の指定を行いたい場合は次のようになります。

$mpdf = new \Mpdf\Mpdf([
	'mode' => 'ja' //使用する言語を日本語に指定
]);

用紙サイズを指定する

用紙サイズはA4B5などの規格サイズや「Letter」「Legal」などの定型、もしくは任意のサイズを指定することができます。(初期値はA4

  • A0A1A2A3A4A5A6A7A8A9A10
  • B0B1B2B3B4B5B6B7B8B9B10
  • C0C1C2C3C4C5C6C7C8C9C10
  • Letter
  • Legal
  • Executive
  • Folio

mPDFクラスのインスタンス生成時に「format」に値を渡して設定を行います。

$mpdf = new \Mpdf\Mpdf([
	'format' => 'B5' // 用紙サイズの指定
]);

任意のサイズを指定したい場合はサイズをミリ(mm)単位で指定します。

$mpdf = new \Mpdf\Mpdf([
	'format' => array( 100, 150) // 横100mm、縦150mm
]);

用紙の向きを指定する

用紙の向きは横向き、縦向きのいずれかを指定することができます。(初期値は横向き

  • P…Portrait(横向き)
  • L…Landscape(縦向き)

mPDFクラスのインスタンス生成時に「orientation」に値を渡して設定を行います。

$mpdf = new \Mpdf\Mpdf([
	'orientation' => 'L' // 用紙の向きを指定
]);

縦向き(Portrait)

縦向きの表示例

横向き(Landscape)

横向きの表示例

用紙サイズと向きをセットで指定する

用紙サイズと向きは同時に設定することもできます。
同時に設定する時は、formatに「A4-L」や「B5-P」のように、「 (半角ハイフン)」で区切って用紙サイズと向きの順に指定してください。

$mpdf = new \Mpdf\Mpdf([
	'format' => 'B5-P' //縦向きB5サイズ
]);

フォントサイズを指定する

PDFの標準フォントサイズを「pt」の単位で指定することができます。(初期値は11pt

mPDFクラスのインスタンス生成時に「default_font_size」に値を渡して設定を行います。

$mpdf = new \Mpdf\Mpdf([
	'default_font_size' => 18
]);

フォントを指定する

mPDFクラスのインスタンス生成時に「default_font」へ値を渡すことで、標準で使用するフォントの種類を指定することができます。

$mpdf = new \Mpdf\Mpdf([
	'default_font' => 'sans-serif'
]);

上下左右の余白を指定する

PDFの上下左右の余白をそれぞれミリ(mm)の単位で指定することができます。

  • margin_left…左の余白
  • margin_right…右の余白
  • margin_top…上の余白
  • margin_bottom…下の余白
  • margin_header…ヘッダーの余白
  • margin_footer…フッターの余白

初期値は左右が「15」、上下は「16」、ヘッダーとフッターは「9」です。
これらの余白を変更するには、次のようにそれぞれ値を設定していきます。

$mpdf = new \Mpdf\Mpdf([
	'margin_left' => 20, // 左の余白
	'margin_right' => 20, // 右の余白
	'margin_top' => 10, //上の余白
	'margin_bottom' => 10, //下の余白
	'margin_header' => 10, //ヘッダーの余白
	'margin_footer' => 10 //フッターの余白
]);

ヘッダーとフッターはページに含まれる場合のみ余白が設定されます。

以上、PDFの設定についての解説でした。
こちらで解説している内容は公式リファレンスを参照し、動作検証を行っています。
公式リファレンスはこちらから。
__construct – mPDF functions (英語)

こちらの記事は役に立ちましたか?

ありがとうございます。
もしよろしければ、あわせてフィードバックや要望などをご入力ください。

コメントありがとうございます!
運営の参考にさせていただきます。