カスタム検索

カラーの適用

文字や図形などにカラーを適用して描画したい場合、カラーオブジェクトを作成する必要があります。

カラーオブジェクトの作成方法は4パターンありますが、それらは以下のようになります。

クラス名 色表現 引数
Zend_Pdf_Color_GrayScale グレイスケール (float) 0.0から1.0の間で指定
Zend_Pdf_Color_Rgb RGB (float) Red, Green, Blue, それぞれの値を0.0から1.0の間で指定
Zend_Pdf_Color_Cmyk CMYK (float) Cyan, Magenta, Yellow, Key Tone, それぞれの値を0.0から1.0の間で指定
Zend_Pdf_Color_Html HTML (string) カラーネーム、あるいは16進表記のカラーコード

カラーを適用するには、Zend_Pdf_PageのsetFillColor()メソッドの引数に、作成したカラーオブジェクトを指定します。

Zend_Pdf-ex9.php (カラーの適用)
<?php
/**
 * Zend_Pdf
 * カラーの適用
 */

/** Zend_Pdfのロード */
require_once 'Zend/Pdf.php';


/** 生成 */
// Zend_Pdfのインスタンス生成
$pdf = new Zend_Pdf();

// A4サイズのページを作成
$pdf->pages[] = $pdf->newPage(Zend_Pdf_Page::SIZE_A4);


/** 設定 */
// カラーを生成
$colorGrayScale = new Zend_Pdf_Color_GrayScale(0.5);
$colorRgb       = new Zend_Pdf_Color_Rgb(0.90.20.7);
$colorCmyk      = new Zend_Pdf_Color_Cmyk(1.00.50.00.2);
$colorHtml      = new Zend_Pdf_Color_Html('forestgreen');
$colorHtml2     = new Zend_Pdf_Color_Html('#daa520');

// フォントの指定(標準フォント:Helvetica)
$font Zend_Pdf_Font::fontWithName(Zend_Pdf_Font::FONT_HELVETICA);

// フォントを36ptで適用
$pdf->pages[0]->setFont($font36);

// 文字列定義
$text 'Hello World!';

// カラーを適用
$pdf->pages[0]->setFillColor($colorGrayScale);
// 50pt, 750ptの位置にUTF-8で描画
$pdf->pages[0]->drawText($text50750'UTF-8');

// カラーを適用
$pdf->pages[0]->setFillColor($colorRgb);
// 50pt, 700ptの位置にUTF-8で描画
$pdf->pages[0]->drawText($text50700'UTF-8');

$pdf->pages[0]->setFillColor($colorCmyk);
$pdf->pages[0]->drawText($text50650'UTF-8');

$pdf->pages[0]->setFillColor($colorHtml);
$pdf->pages[0]->drawText($text50600'UTF-8');

$pdf->pages[0]->setFillColor($colorHtml2);
$pdf->pages[0]->drawText($text50550'UTF-8');


/** 出力 */
// HTTPヘッダ:PDFを出力
header('Content-type: application/pdf');

// HTTPヘッダ:ファイル名をhello_world.pdfに
header('Content-Disposition: attachment; filename="hello_world.pdf"');

// ドキュメントを出力
echo $pdf->render();
Zend_Pdf-ex9.phpを実行し、保存後、ビューアーで表示
レンタルサーバーなら使えるねっと
CopyLeft 2010 PEABOX.COM サイト管理者に連絡