LaravelでPDFを生成する機能の紹介です。dompdfライブラリをLaravelに実装するプロセスをステップバイステップで説明します。
ステップ1: パッケージのインストール
最初に、Composerを使用してDOMPDFパッケージをインストールします。
composer require barryvdh/laravel-dompdf
ステップ2: サービスプロバイダの設定
次に、config/app.php
ファイルにサービスプロバイダとエイリアスを追加します。
'providers' => [
// ...
Barryvdh\DomPDF\ServiceProvider::class,
],
'aliases' => [
// ...
'PDF' => Barryvdh\DomPDF\Facade::class,
],
ステップ3:ビューの作成
PDFで表示する内容を記述したビューファイルをresources/viewsディレクトリに作成します。例えば、invoice.blade.phpとして以下のように記述することができます。
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>請求書</title>
</head>
<body>
<h1>請求書詳細</h1>
<p>LaravelとDOMPDFを使用して生成されたサンプル請求書です。</p>
<!-- その他の内容 -->
</body>
</html>
ステップ4:PDFの生成とダウンロード
実際にPDFを生成するには、以下のようなコントローラメソッドを作成します。
use PDF;
public function generatePDF()
{
$data = [
'title' => 'サンプルタイトル',
'content' => 'ここにコンテンツを記述します。',
];
$pdf = PDF::loadView('your.view', $data);
return $pdf->download('sample.pdf');
}
このメソッドでは、ビューファイルとデータをloadViewメソッドに渡し、downloadメソッドを使用してPDFをダウンロードします。
まとめ
dompdfパッケージを使うと、Laravelアプリケーションで簡単にPDFを生成できます。
注意点ですが、デプロイをすると、viewのCSSが崩れたり、日本語表示ができなかったりしました。環境構築やライブラリの設定を変更し、対応できるようにする必要が出てくるかもしれません。