php绘图之在图片上写中文和英文的方法

 更新时间:2015年01月24日 15:11:46   转载 投稿:shichen2014  
这篇文章主要介绍了php绘图之在图片上写中文和英文的方法,涉及GD库中imagestring和imagettftext方法的使用技巧,需要的朋友可以参考下

本文实例讲述了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程序设计有所帮助。

相关文章

  • PHP文件与目录操作示例

    PHP文件与目录操作示例

    这篇文章主要介绍了PHP文件与目录操作,涉及php针对文件与目录的遍历、判断与排序相关操作技巧,注释中备有较为详细的说明,需要的朋友可以参考下
    2016-12-12
  • php使用pdo连接mssql server数据库实例

    php使用pdo连接mssql server数据库实例

    这篇文章主要介绍了php使用pdo连接mssql server数据库的方法,以实例形式分析了php使用pdo连接mssql server数据库的技巧,非常简单实用,需要的朋友可以参考下
    2014-12-12
  • Yii2框架整合Xunsearch搜索引擎的方法

    Yii2框架整合Xunsearch搜索引擎的方法

    这篇文章主要介绍了Yii2框架整合Xunsearch搜索引擎的方法,结合实例形式分析了Yii2框架整合Xunsearch的具体步骤与相关注意事项,需要的朋友可以参考下
    2016-10-10
  • php进行支付宝开发中return_url和notify_url的区别分析

    php进行支付宝开发中return_url和notify_url的区别分析

    这篇文章主要介绍了php进行支付宝开发中return_url和notify_url的区别,较为详细的分析了return_url和notify_url的区别与用法,需要的朋友可以参考下
    2014-12-12
  • 使ecshop模板中可引用常量的实现方法

    使ecshop模板中可引用常量的实现方法

    据说ecshop的模板类是修改的smarty,不过个人感觉不是修改是完全重写了。它和smarty上只是模板标签上有相同的地方,同时阉割了很多功能
    2011-06-06
  • PHP 访问数据库配置通用方法(json)

    PHP 访问数据库配置通用方法(json)

    目的是通过通用类访问配置文件的方式,提供对数据库连接的动态获取和设置,使开发时和生产应用时都能够提供灵活的、简化的、解耦的操作方式,需要的朋友可以参考下
    2018-05-05
  • PHP检查网站是否宕机的方法示例

    PHP检查网站是否宕机的方法示例

    这篇文章主要介绍了PHP检查网站是否宕机的方法,结合具体实例形式分析了php基于curl会话针对网站状态进行检查的相关操作技巧,需要的朋友可以参考下
    2017-07-07
  • PHP实现数组转JSon和JSon转数组的方法示例

    PHP实现数组转JSon和JSon转数组的方法示例

    这篇文章主要介绍了PHP实现数组转JSon和JSon转数组的方法,结合实例形式分析了php数组与json相互转换实现方法与操作技巧,需要的朋友可以参考下
    2018-06-06
  • MySQL连接数超过限制的解决方法

    MySQL连接数超过限制的解决方法

    最近网站出现 User 数据库名称 has already more than 'max_user_connections' active connections 的报错,网站瘫痪。有必要研究下这个问题。
    2011-07-07
  • php 中self,this的区别和操作方法实例分析

    php 中self,this的区别和操作方法实例分析

    这篇文章主要介绍了php 中self,this的区别和操作方法,结合实例形式分析了PHP面向对象程序设计中self,this的功能、区别、使用方法与操作注意事项,需要的朋友可以参考下
    2019-11-11

最新评论