[kansaipm] GDで日本語を扱いたいのですが・・・
takimoto
takimoto at miki-net.or.jp
Thu Feb 21 20:00:31 CST 2002
TAKIです
GDモジュールで日本語を扱いたいのですがやり方がよくわかりません.
いえ 日本語が というよりもモジュールの扱い,ひいてはオブジェクト指向その
ものの考え方が判ってないのだと… > あたし
GDで日本語を表示させたい,と思っていたら GD::Text がTrueTypeフォントに対
応していて日本語表示ができる らしい というところまで辿り付きました.
でドキュメントを参考に以下のようなソースを組んで見ました.
もちろん GDそのもののstringは描画できるのですが,GD:Text で作成したオブ
ジェクトをどう反映したものかわからず,どなたかご教授お願いできます?
以下 ヘボいソースですが…
--------------ここから------------
#!/usr/bin/perl
use GD;
use GD::Text;
# 新規画像を作成する。
$im = new GD::Image(300,200);
# カラーを割り当てる。
$white = $im->colorAllocate(255,255,255);
$black = $im->colorAllocate(0,0,0);
# 現在の時刻をget
($sec, $min, $hour, $mday, $mon, $year) = localtime(time);
$year += 1900;
$string = sprintf "gdtest %02d:%02d:%02d", $hour, $min, $sec;
$im->string( gdTinyFont, 5, 100, 'gdTinyFont-', $black);
$im->string( gdSmallFont, 5, 110, 'gdSmallFont-', $black);
$im->string( gdMediumBoldFont, 5, 120, 'gdMediumBoldFont-', $black);
$im->string( gdLargeFont, 5, 130, 'gdLargeFont-', $black);
# GD::Text を扱いたいが・・・
my $gd_text = GD::Text->new() or die GD::Text::error();
$gd_text->set_font('HGRSMP.TTF', 12) or die $gd_text->error;
$gd_text->set_text($string);
my ($w, $h) = $gd_text->get('width', 'height');
# さて このあとどうしたらいいんだろう?
binmode STDOUT;
# 画像をPNGに変換し、標準出力に出力する。
print $im->png;
exit;
--------------ここまで--------------
追伸
システムはとりあえずWindowsを使っています.
瀧本 満 "TAKI" takimoto at miki-net.or.jp
More information about the Kansai-pm
mailing list