今回は PHPExcel でセルの中にフォントサイズが異なる文字列を設定する方法を説明したいと思います。
今まではセルに対して文字列をそのまま設定すれば、フォントサイズはデフォルトのままで設定できました。
セルに設定する値を文字列では無く、リッチテキストクラス「PHPExcel_RichText」を使うことで、 設定する文字列にフォントなどの指定ができます。
<?php
// ライブラリ読込
require_once './PHPExcel-1.8/Classes/PHPExcel.php';
// PHPExcelオブジェクト作成
$objBook = new PHPExcel();
// シート設定
$objSheet = $objBook->getActiveSheet();
// リッチテキストで前半はサイズ12で、後半はサイズ20で設定
$objRichText = new PHPExcel_RichText();
// リッチテキストに文字列設定
$objTextElm = $objRichText->createTextRun("サイズ12");
// フォントサイズ12設定
$objTextElm->getFont()->setSize(12);
// リッチテキストに文字列追加設定
$objTextElm = $objRichText->createTextRun("サイズ20");
// フォントサイズ20設定
$objTextElm->getFont()->setSize(20);
// [A1]セルに設定
$objSheet->getCell('A1')->setValue($objRichText);
// ブラウザへの指定
$objWriter = PHPExcel_IOFactory::createWriter($objBook, "Excel2007");
$objWriter->save('test11-1.xlsx');
exit();
?>
出力されたエクセルファイルを見てみると以下の様になります。
”サイズ12”の文字列はサイズ12で、”サイズ20”の文字列はサイズ20で設定されている様子がわかります。
PR
コメント