SOFTELメモ Developer's blog

会社概要 ブログ 調査依頼 採用情報 ...
技術者募集中

PHP: haru コードサンプル

日本語を含まない場合

<?php

$doc = new HaruDoc;

$doc->setPageMode(HaruDoc::PAGE_MODE_USE_THUMBS); /* サムネイルを表示します */

$page = $doc->addPage(); /* ドキュメントにページを追加します */
$page->setSize(HaruPage::SIZE_A4, HaruPage::LANDSCAPE); /* ページを A4 横に設定します */

$courier = $doc->getFont("Courier-Bold"); /* 数行先で、組み込みのフォントを使用します */

$page->setRGBStroke(0, 0, 0); /* 色を設定します */
$page->setRGBFill(0.7, 0.8, 0.9);
$page->rectangle(150, 150, 550, 250); /* 矩形を描画します */

$page->fillStroke(); /* 塗りつぶします */

$page->setDash(array(3, 3), 0); /* このページの破線の形式を設定します */
$page->setFontAndSize($courier, 60); /* フォントとサイズを設定します */

$page->setRGBStroke(0.5, 0.5, 0.1); /* 線の色を設定します */
$page->setRGBFill(1, 1, 1); /* 塗りつぶし色を設定します */

$page->setTextRenderingMode(HaruPage::FILL_THEN_STROKE); /* テキストを塗りつぶし、描画します */

/* テキストを表示します */
$page->beginText();
$page->textOut(210, 270, "Hello World!");
$page->endText();

$doc->save(dirname(__FILE__) . "/test.pdf"); /* ドキュメントをファイルに保存します */

?>

日本語を含む場合

<?php

$pdf = new HaruDoc;
$page = $pdf->addPage();
$pdf->useJPFonts();
$pdf->useJPEncodings();

$page->beginText();

$insFont = $pdf->getFont('MS-Gothic', "90ms-RKSJ-H");
$page->setFontAndSize($insFont, 20);
$page->textOut(40, 780, mb_convert_encoding("ようこそ ABC ①② 髙 " . 'MS-Gothic', 'SJIS-win', 'UTF-8'));

$insFont = $pdf->getFont('MS-Mincyo', "EUC-H");
$page->setFontAndSize($insFont, 20);
$page->textOut(40, 700, mb_convert_encoding("あえいうえおあお " . 'MS-Mincyo', 'eucjp-win', 'UTF-8'));

$insFont = $pdf->getFont('MS-Gothic', "90ms-RKSJ-H");
$page->setFontAndSize($insFont, 30);
$page->textOut(40, 620, "ようこそ HaruPDF!①②髙");

$page->setFontAndSize($insFont, 10);
$page->textOut(40, 600, mb_convert_encoding("UTF-8には対応してないのかな?", 'SJIS-win', 'UTF-8'));
$page->textOut(40, 590, mb_convert_encoding("SJIS-winには対応してるみたい " . 'MS-Gothic', 'SJIS-win', 'UTF-8'));

$page->endText();

header('Content-type: application/pdf');
header('Content-Disposition: attachment; filename="haru.pdf"');
$pdf->output();

日本語を含む場合でフォント指定

<?php
/*
	組み込まれているフォントは

    * MS-Mincyo
    * MS-Gothic
    * MS-PMincyo
    * MS-PGothic
*/

$fontname1 = 'MS-Gothic';
$fontname2 = 'MS-Mincyo';
$fontname3 = 'MS-PGothic';
$fontname4 = 'MS-PMincyo';


$pdf = new HaruDoc;
$pdf->useJPFonts();
$pdf->useJPEncodings();

$page = $pdf->addPage();

//文字出力開始
$page->beginText();

$insFont = $pdf->getFont($fontname1, "90ms-RKSJ-H");
$page->setFontAndSize($insFont, 20);
$page->textOut(40, 780, mb_convert_encoding("ようこそ ABC ①② 髙 " . $fontname1, 'SJIS-win', 'UTF-8'));
$page->setFontAndSize($insFont, 2);
$page->textOut(40, 780, mb_convert_encoding("#
arkit.co.jp/flinux/special/samba3b/samba04.html を再度とらいしたところ、 みごとにパスワードのポップアップなしでうまくいきました。 ...
mlog.euqset.org/archives/samba-jp/19252.html - キャッシュ - 類似ページ -
#
Sambaをインストールして、みんなでファイルを共有できるようにする。
yumコマンドで一発です (↓Sambaのインストール画面) インストールが終わったら、ダウンロードしたパッケージを削除します。 ... ちなみに、LinuxとSambaのユーザーは同じですが、パスワードは違う物を設定できます。 (↓Sambaのユーザー登録例) ...
www.searchman.info/fedoracore4/sev1070.html - キャッシュ - 類似ページ -
#
WebブラウザによるSambaの設定方法「SWAT]
SWATはSamba Web Administration Toolの略で、Webブラウザによる設定を可能にするSambaプログラムです。 SWATを使うと非常に簡単に設定ができますが、あくまでも”smb.conf” ... [root@linux ~]# yum install samba-swat [enter] ... 「ユーザ名:root」と「パスワード:******」rootのパスワードを入力して、【OK】ボタンを押してください。 ...
kansai.homelinux.com/~Linux/linux-samba-swat.htm - キャッシュ - 類似ページ -  " . $fontname1, 'SJIS-win', 'UTF-8'));

$insFont = $pdf->getFont($fontname2, "EUC-H");
$page->setFontAndSize($insFont, 20);
$page->textOut(40, 700, mb_convert_encoding("あえいうえおあお " . $fontname2, 'eucjp-win', 'UTF-8'));

$insFont = $pdf->getFont($fontname4, "90ms-RKSJ-H");
$page->setFontAndSize($insFont, 30);
$page->textOut(40, 620, mb_convert_encoding("ようこそ HaruPDF!①②髙" . $fontname4, 'SJIS-win', 'UTF-8'));

$insFont = $pdf->getFont($fontname3, "90ms-RKSJ-H");
$page->setFontAndSize($insFont, 10);
$page->textOut(40, 600, mb_convert_encoding("UTF-8には対応してないのかな?", 'SJIS-win', 'UTF-8'));
$page->textOut(40, 590, mb_convert_encoding("SJIS-winに対応してるまぁよし " . $fontname3, 'SJIS-win', 'UTF-8'));

//文字出力終了
$page->endText();


//線描いてみます
$page->moveTo(100, 100);
$page->lineTo(200, 100);
$page->stroke();

$page->setLineWidth(5.0);
$page->moveTo(200, 200);
$page->lineTo(200, 400);
$page->stroke();


header('Content-type: application/pdf');
header('Content-Disposition: attachment; filename="haru.pdf"');
$pdf->output();

関連するメモ

コメント