タイトルにある通り
PHP/LaravelでテンプレPDFに文字を書き込んでいく方法に難航したため保存しておきます。
まず、必要なライブラリがあるため以下手順でインストールしていきます
TCPDFのインストール ⇒ FPDIをインストール
1.TCPDFインストール
gitから「Download zip」でzipファイルをダウンロード
2.FPDIインストール
以下公式サイトからzipファイルをダウンロード
3.手順1.2でダウンロードしたファイルを解凍しまとめる
4.テンプレートになるPDFを格納する
適当にネットとかで拾ってきたPDFを、今回はtemplateフォルダ作成して格納
すると、以下のようなフォルダ構成になると思います(若干いらないファイル削除しました)
5.PDF出力のソースコードを書く
以下のように記載していきます
<?php
namespace App\Http\Controllers;
use setasign\Fpdi\Tcpdf\Fpdi;
class OutResumePdfController extends Controller
{
//
function pdfResume()
{
//読み込むパスは個人で変えてください
require_once(__DIR__.'/../../lib/tcpdf/tcpdf.php');
require_once(__DIR__.'/../../lib/tcpdf/fpdi/autoload.php');
$pdf = new Fpdi();
$pdf->setPrintHeader( false );
//テンプレートPDFの読み込み
$pdf->setSourceFile(__DIR__."/../../lib/tcpdf/template/resume_template1.pdf");
//PDFのサイズなどを設定(LANDSCAPE(横)にA3サイズ)
$pdf->AddPage('LANDSCAPE','A3');
$tpl = $pdf->importPage(1);
$pdf->useTemplate($tpl);
//書き込む文字のフォント・サイズを設定
$pdf->SetFont('kozminproregular', '', 20);
//書き込む文字の座標と文字を設定
$pdf->Text(40, 50, "テスト太郎");
//PDFの出力
$pdf->Output("resume.pdf", "I");
}
}
細かい仕様はドキュメントを確認してください
公式ドキュメントか分からないですが、ここを参考にしました
文字の座標などは、adobeAcrobatReaderなどを使うとわかりやすいかもしれません
テンプレPDFのサイズなどもこのソフトで確認出来ます。
6.実際に実行してみる
文字が出力されました
プラスαでフォントの変更や画像埋め込みをしたい場合は以下サイトを参考にすることで実装出来ました