function.php <?php function u2utf8($c) { for($i = 0; $i < count($c); $i++) $str = ""; if ($c < 0x80) { $str .= $c; } else if ($c < 0x800) { $str .= (0xC0 | $c >> 6); $str .= (0x80 | $c & 0x3F); } else if ($c < 0x10000) { $str .= (0xE0 | $c >> 12); $str .= (0x80 | $c >> 6 & 0x3F); $str .= (0x80 | $c & 0x3F); } else if ($c < 0x200000) { $str .= (0xF0 | $c >> 18); $str .= (0x80 | $c >> 12 & 0x3F); $str .= (0x80 | $c >> 6 & 0x3F); $str .= (0x80 | $c & 0x3F); } return $str; } function gb2utf8($gb) /* Program writen by sadly modified by agun */ { if (!trim($gb)) return $gb; $filename = "gb2312.txt"; $tmp = file($filename); $codetable = array(); while (list($key, $value) = each($tmp)) $codetable[hexdec(substr($value, 0, 6))] = substr($value, 7, 6); $ret = ""; $utf8 = ""; while ($gb) { if (ord(substr($gb, 0, 1)) > 127) { $this = substr($gb, 0, 2); $gb = substr($gb, 2, strlen($gb)); $utf8 = u2utf8(hexdec($codetable[hexdec(bin2hex($this))-0x8080])); for($i = 0; $i < strlen($utf8); $i += 3) $ret .= chr(substr($utf8, $i, 3)); } else { $ret .= substr($gb, 0, 1); $gb = substr($gb, 1, strlen($gb)); } } return $ret; } ?>
test.php <?php include("function.php"); $myfont = "湘潭大学374号信箱"; $my = gb2utf8($myfont); Header("Content-type: image/png"); $im = ImageCreate(270, 50); $black = ImageColorAllocate($im, 0, 0, 0); $white = ImageColorAllocate($im, 184, 44, 6); ImageTTFText($im, 20, 0, 4, 30, $white, "hy07.TTF", $my); ImagePNG($im); ImageDestroy($im); ?>
test1.php <?php include("function.php"); $imgname = "01.jpg"; $string = "http://blog.csdn.net/hfly2005"; $string1 = gb2utf8("湘潭大学学生活动中心"); Header("Content-type: image/jpeg"); $im = @ImageCreateFromJPEG ($imgname); $black = ImageColorAllocate($im, 0, 0, 0); $blue = ImageColorAllocate($im, 0, 0, 255); $white = ImageColorAllocate($im, 255, 255, 255); $yellow = ImageColorAllocate($im, 255, 255, 0); ImageTTFText($im, 20, 0, 4, 30, $blue, "flx_girl.ttf", $string); ImageTTFText($im, 20, 0, 500, 450, $white, "hy07.TTF", $string1); ImageJPEG($im); ImageDestroy($im); ?>

|