ホームページ >php教程 >php手册 >PHP は画像に中国語のテキストを追加する機能を実装します

PHP は画像に中国語のテキストを追加する機能を実装します

WBOY
WBOYオリジナル
2016-06-21 08:59:301459ブラウズ

/*
注: gd ライブラリのサポートと iconv のサポートが必要です (php5 は既に含まれており、ロードする必要はありません)
*バージョン 1.0
*@author sanshi(叁Shi)
*QQ: 35047205
*MSN: sanshi0815@tom.com
*2005/10/20 作成
画像に中国語のテキストを追加
*/
/*
param $image 画像リソース
param size フォントサイズ
param angle フォント出力角度
param showX 出力位置 x 座標
param showY 出力位置 y座標
param font フォント ファイルの場所
param content 画像に表示する内容
*/
class showChinaText
{
var $text='Hello';
var $font= 'fs.ttf';
var $angle=0;
var $size=50;
var $showX=100;
var $showY=100;
関数 showChinaText ($showText ='')
{
$this->text=!isset($showText)?$showText:$this->text;
//exit();
$this- >show();
}
function createText($instring)
{
$outstring="";
$max=strlen($instring);
for($ i=0;$i {
$h=ord($instring[$i]);
if($h>=160 && $i {
$outstring.="".base_convert(bin2hex(iconv("gb2312","ucs-2",substr ($instring,$i,2))), 16,10 ).";";
$i++;
}
else
{
$outstring.=$instring[$i];
}
}
return $outstring;
}
function createJpeg()
{}
function show()
{
//出力ヘッダー content
Header( "Content-type : image/ png");
//画像を作成
$image = imagecreate(400,300);
//色を定義
$red = ImageColorAllocate($image,255,0,0);
$white = ImageColorAllocate($image,255,255,255);
$black=ImageColorAllocate($image,0,0,0);
//塗りつぶし色
ImageFilledRectangle($image,0,0,200,200 ,$ red);
//テキストを表示
$txt=$this->createText($this->text);
//テキストを書き込む
imagettftext($image,$this - >size, $this->angle, $this->showX, $this->showY,$white,$this->font,$txt);
//ImageString($image, 5 ,50,10,$txt,$white);
//グラフィックスを表示
imagejpeg($image);
ImageDestroy($image);
}
}
/ / このクラスはよく考えられておらず、単にカプセル化されているだけです。将来機会があれば、元の画像クラス
?>
/と統合される可能性があります。 /使用例
$s = new showChinaText();
?>



声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。