フォントの種類とサイズの設定(setFontFamily, setSize)
データの表示で使われるフォントの種類とサイズを設定する方法を確認します。フォントの種類を設定するにはSpreadsheet_Excel_Writer_Formatクラスで用意されているsetFontFamilyメソッドを使います。
void setFontFamily(string $font_family)
フォントファミリを設定します。 パラメータ: $font_family フォントファミリ名
1番目の引数にフォントファミリ名を指定します。指定可能な値は次の通りです。
'Times New Roman' 'Arial' 'Courier'
ただ実際に試してみたところExcelの「セルの書式設定」で選択可能なフォント名であれば指定可能なようです。例えば次のようなフォント名を指定できます。
'MS P明朝' 'MS ゴシック' 'MS 明朝'
実際には次のように記述します。
<?php require_once("Spreadsheet/Excel/Writer.php"); $workbook = new Spreadsheet_Excel_Writer(); $workbook->send('sample1-1.xls'); $format =& $workbook->addFormat(); $format->setFontFamily('Arial'); $worksheet =& $workbook->addWorksheet('シート1'); $worksheet->writeString(0, 0, "こんにちは", $format); $workbook->close(); ?>
フォントを指定するための書式プロパティは用意されたいないようなので、addeFormatメソッドの引数に直接指定することはできません。
次にフォントのサイズを設定するにはSpreadsheet_Excel_Writer_Formatクラスで用意されているsetSizeメソッドを使います。
void setSize(integer $size)
フォントサイズを設定します。 パラメータ: $size フォントサイズ
1番目の引数にフォントサイズを指定します。単位はポイントです。
実際には次のように記述します。
<?php require_once("Spreadsheet/Excel/Writer.php"); $workbook = new Spreadsheet_Excel_Writer(); $workbook->send('sample1-1.xls'); $format =& $workbook->addFormat(); $format->setFontFamily('Arial'); $format->setSize(16); $worksheet =& $workbook->addWorksheet('シート1'); $worksheet->writeString(0, 0, "こんにちは", $format); $workbook->close(); ?>
サンプルプログラム
では簡単なサンプルで試してみます。
<?php require_once("Spreadsheet/Excel/Writer.php"); $workbook = new Spreadsheet_Excel_Writer('./sheet/sample20-1.xls'); $worksheet =& $workbook->addWorksheet('シート1'); $format1 =& $workbook->addFormat(); $format1->setFontFamily('MS ゴシック'); $format1->setSize(16); $format2 =& $workbook->addFormat(); $format2->setFontFamily('MS 明朝'); $format2->setSize(20); $worksheet->writeString(0, 0, '東京都', $format1); $worksheet->writeString(1, 0, '大阪府', $format2); $workbook->close(); print('<html>'); print('<head>'); print('<meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />'); print('</head>'); print('<body>'); print('<p><a href="./sheet/sample20-1.xls">Excelファイル</a></p>'); print('</body></html>'); ?>
上記のファイルをWWWサーバのドキュメントルート以下に設置しブラウザからアクセスすると次のように表示されます。
作成されたExcelファイルへのリンクが表示されます。リンクからExcelファイルをローカルに保存しExcelで開いて下さい。
( Written by Tatsuo Ikura )