首页 > php框架 > PHP读取汉字点阵数据

PHP读取汉字点阵数据

鑳屾櫙鐭ヨ瘑锛欬br />
銆€銆€銆€绠€浣撲腑鏂囧浗鏍囧瓧搴擄紙1981骞磋锛屼腑鍥藉ぇ闄嗭級銆?445涓瓧绗︼紝鍏朵腑姹夊瓧6773涓紝鍖呮嫭涓€绾ф眽瀛?755涓紝浜岀骇姹夊瓧3008涓€傞噰鐢?瀛楄妭锛?6浣嶄簩杩涘埗锛夌紪鐮併€侟br />
銆€銆€鍖轰綅鐮侊細鍥芥爣GB2312瑙勫畾,鎵€鏈夌殑鍥芥爣姹夊瓧涓庣鍙风粍鎴愪竴涓?4×94鐨勭煩闃点€傚湪姝ゆ柟闃典腑,姣忎竴琛岀О涓轰竴涓?rdquo;鍖?rdquo;,姣忎竴鍒楃О涓轰竴涓?rdquo;浣?rdquo;,鍥犳,杩欎釜鏂归樀瀹為檯涓婄粍鎴愪簡涓€涓湁94涓尯(鍖哄彿鍒嗗埆涓? 1鍒?4)銆佹瘡涓尯鍐呮湁94涓綅(浣嶅彿鍒嗗埆涓?1鍒?4)鐨勬眽瀛楀瓧绗﹂泦銆備竴涓眽瀛楁墍鍦ㄧ殑鍖哄彿鍜屼綅鍙风畝鍗曞湴缁勫悎鍦ㄤ竴璧峰氨鏋勬垚浜嗚姹夊瓧鐨?rdquo;鍖轰綅鐮?rdquo;銆傚湪姹夊瓧鐨勫尯浣嶇爜涓?楂樹袱浣嶄负鍖哄彿,浣庝袱浣嶄负浣嶅彿銆傜敱姝ゅ彲瑙?鍖轰綅鐮佷笌姹夊瓧鎴栫鍙蜂箣闂存槸涓€涓€瀵瑰簲鐨勩€侟br />
銆€銆€鍐呯爜锛氭眽瀛楃殑鍐呯爜鏄寚鍦ㄨ绠楁満涓〃绀烘眽瀛楃殑缂栫爜銆傛満鍐呯爜涓庡尯浣嶇爜绋嶆湁鍖哄埆銆備负浠€涔堜笉鐩存帴鐢ㄥ尯浣嶇爜浣滀负璁$畻鏈哄唴鐨勭紪鐮佸憿? 杩欐槸鍥犱负姹夊瓧鐨勫尯鐮佸拰浣嶇爜鐨勮寖鍥撮兘鍦?鍒?4鍐? 鍋囧鐩存帴鐢ㄥ尯浣嶇爜浣滄満鍐呯爜, 灏变細涓庡熀鏈珹SCII鐮佸啿绐併€ 姹夊瓧鐨勫唴鐮侀€氬父涓庢墍浣跨敤鐨勮绠楁満绯荤粺鏈夊叧銆傜洰鍓?瀵逛簬鍥藉唴澶у鏁扮殑璁$畻鏈虹郴缁?涓€涓眽瀛楃殑鍐呯爜鍗犱袱涓瓧鑺?鍒嗗埆绉颁负楂樹綅瀛楄妭涓庝綆浣嶅瓧鑺?涓旇繖涓や綅瀛楄妭涓庡尯浣嶇爜鐨勫叧绯诲涓婜 鍐呯爜楂樹綅=鍖虹爜 A0H(H琛ㄧず鍗佸叚杩涘埗) 鍐呯爜浣庝綅=浣嶇爜 A0H 渚嬪,姹夊瓧”鍟?rdquo;鐨勫尯浣嶇爜涓?rdquo;1601″,鍖虹爜鍜屼綅鐮佸垎鍒敤鍗佸叚杩涘埗琛ㄧず鍗充负”1001H”,鍒欏畠鐨勫唴鐮佷负”B0A1H”銆傚叾涓瑽0H涓哄唴鐮佺殑楂樹綅瀛楄妭,A1H涓哄唴鐮佺殑浣庝綅瀛楄妭銆侟br />
銆€銆€PHP浠g爜锛氳繑鍥炵敱0鍜?缁勬垚鐨勫瓧绗︿覆銆侟br /><?php
/**
* 璇诲彇姹夊瓧鐐归樀鏁版嵁
*/

$str = "涓崕浜烘皯鍏卞拰鍥?quot;;

$font_file_name = "simsun12.fon"; // 鐐归樀瀛楀簱鏂囦欢鍚岦br />$font_width = 12; // 鍗曞瓧瀹藉害
$font_height = 12; // 鍗曞瓧楂樺害
$start_offset = 0; // 鍋忕Щ

$fp = fopen($font_file_name, "rb");

$offset_size = $font_width * $font_height / 8;
$string_size = $font_width * $font_height;
$dot_string = "";

for ($i = 0; $i < strlen($str); $i )
{
if (ord($str{$i}) >160)
{
// 鍏堟眰鍖轰綅鐮侊紝鐒跺悗鍐嶈绠楀叾鍦ㄥ尯浣嶇爜浜岀淮琛ㄤ腑鐨勪綅缃紝杩涜€屽緱鍑烘瀛楃鍦ㄦ枃浠朵腑鐨勫亸绉狐br />$offset = ((ord($str{$i}) - 0xa1) * 94 ord($str{$i 1}) - 0xa1) * $offset_size;
$i ;
}
else
{
$offset = (ord($str{$i}) 156 - 1) * $offset_size;
}

// 璇诲彇鍏剁偣闃垫暟鎹?br />fseek($fp, $start_offset $offset, SEEK_SET);
$bindot = fread($fp, $offset_size);

for ($j = 0; $j < $offset_size; $j )
{
// 灏嗕簩杩涘埗鐐归樀鏁版嵁杞寲涓哄瓧绗︿覆
$dot_string .= sprintf("b", ord($bindot{$j}));
}
}

fclose($fp);

echo $dot_string;
?>


文章网址:http://www.phprm.com/frame/php1004869.html

随意转载^^但请附上教程地址。

标签:none

发表留言