程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP綜合 >> php繪圖之在圖片上寫中文和英文的方法

php繪圖之在圖片上寫中文和英文的方法

編輯:PHP綜合

本文實例講述了php繪圖之在圖片上寫中文和英文的方法。分享給大家供大家參考。具體如下:

第一種方法,只能寫英文,中文會出現亂碼
復制代碼 代碼如下:<?php
//1、創建畫布
$im = imagecreatetruecolor(300,200);//新建一個真彩色圖像,默認背景是黑色,返回圖像標識符。另外還有一個函數 imagecreate 已經不推薦使用。
$red = imagecolorallocate($im,255,0,0);
//2、寫字
$str = "hello,world";
imagestring($im,5,30,60,$str,$red);//參數說明:5-指文字的大小。函數 imagestring 不能寫中文
//3、輸出圖像
header("content-type: image/png");
imagepng($im);//輸出到頁面。如果有第二個參數[,$filename],則表示保存圖像
//4、銷毀圖像,釋放內存
imagedestroy($im);
?>

第二種方法:寫中文
復制代碼 代碼如下:<?php
//1、創建畫布
$im = imagecreatetruecolor(300,200);//新建一個真彩色圖像,默認背景是黑色,返回圖像標識符。另外還有一個函數 imagecreate 已經不推薦使用。
$red = imagecolorallocate($im,255,0,0);
//2、寫字
$str = iconv("gb2312","utf-8","北京,你早!hello,world");//文件格式為gbk,而這裡轉為uft-8格式,才能正常輸出,否則也為亂碼。表示不明
imagettftext($im,12,rand(0,20),20,100,$red,"simhei.ttf",$str);
//3、輸出圖像
header("content-type: image/png");
imagepng($im);//輸出到頁面。如果有第二個參數[,$filename],則表示保存圖像
//4、銷毀圖像,釋放內存
imagedestroy($im);
?>
imagettftext() 函數遠強於imagestring() 函數,表現在這幾個方面:

(1)imagettftext() 可以輸出中文和英文,可以指定字體;imagestring() 只能輸出英文,只能使用默認字體。
(2)imagettftext() 字體大小可以無限大;imagestring() 字體只有1~5號大小。
(3)imagettftext() 輸出的字體可以變換角度;imagestring() 只能水平輸出。

希望本文所述對大家的php程序設計有所幫助。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved