发新话题
打印

[编程代码] PHP图形处理中的中文输出

PHP图形处理中的中文输出

把GB码转换到UTF8,PHP中TTF支持UTF8编码的非ASCII字符输出,可以实现中文与ASCII混合输出图象,这样在我们操作图象函数时可以更方便.
# W0 l( c0 u% a7 k/ {/ d! J      要实现这个功能需要两个文件:5 x* W1 M( ~$ w8 ?/ k3 H6 a' N
      文件一:GB->;UTF8转码表文件
: z; L7 O7 s8 ]) h9 N) m8 S      文件二:GB->;UTF8转换类文件     ( 这连个文件随后附上)
  ]8 y8 F7 O. E* w: t) R" c/ }! o      有了这两个文件就可以用如下代码来实现在图像中输出中文了。
8 P- J) B4 l; S/ `+ [<?php
9 b, [8 U! a% \( j% Z# |0 Z! R& Q' X" ]session_start();
/ ~* ?& [4 K2 L* p  [. E: oif (isset($vt)) {$vt++;}+ G# d" |( X6 E$ L
else {$vt=1;}& R- N6 \( P! r
session_register("vt");( g& i5 y) \% m+ \" y& Q7 F1 i5 R. b
Header("Content-type: image/png");0 l) ~0 }3 W0 a) j3 T, t2 [
$ip=$REMOTE_ADDR;$ F# [2 M, A9 S! q+ c& ]
$im = imagecreate(400,300);
2 P$ V+ s8 e# N8 I6 U- b! a$black = ImageColorAllocate($im, 0,0,0);
) ?) a& P0 \4 Q7 x) w+ j$white = ImageColorAllocate($im, 184,44,6);2 R& v* x" d/ ?- Q$ u0 I% y
include("gb2utf8.class");" A! J8 `6 W7 m5 F2 K0 f
//ImageTTFText(im,size,angle,x,y,color,font,text);4 b- ~+ i  H3 p% j. w% {
$obj=new gb2utf8("您好,您的IP为".$REMOTE_ADDR);
; O" ^7 Y, [8 CImageTTFText($im, 20, 0, 5, 50, $white, "/home/www/tech/old/STXINGKA.TTF", $obj->;str);( w  o* ^/ ?+ m
$obj=new gb2utf8("
$ z5 g0 g) p% g  c5 u0 e! P0 g8 [0 K! H
当前是您第".$vt."次访问本页面");- J: x7 g+ E4 \! @
ImageTTFText($im, 20, 0, 5, 50, $white, "/path/to/STXINGKA.TTF", $obj->;str);
6 L. S  X3 I% S% J8 rImagePNG($im);
9 V3 n7 B3 E' i) @ImageDestroy($im);/ C$ J) f9 f+ [5 a  p1 w
?>
发新话题