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


Posted in PHP onJanuary 24, 2015

本文实例讲述了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 相关文章推荐
攻克CakePHP系列三 表单数据增删改
Oct 22 PHP
php 模拟POST|GET操作实现代码
Jul 20 PHP
解析PHP高效率写法(详解原因)
Jun 20 PHP
解析如何去掉CodeIgniter URL中的index.php
Jun 25 PHP
PHP中将ip地址转成十进制数的两种实用方法
Aug 15 PHP
php的hash算法介绍
Feb 13 PHP
php实现的漂亮分页方法
Apr 17 PHP
zen cart实现订单中增加paypal中预留电话的方法
Jul 12 PHP
Yii2表单事件之Ajax提交实现方法
May 04 PHP
[原创]PHP正则匹配中英文、数字及下划线的方法【用户名验证】
Aug 01 PHP
PHP类与对象后期静态绑定操作实例详解
Dec 20 PHP
PHP反射学习入门示例
Jun 14 PHP
php绘图之加载外部图片的方法
Jan 24 #PHP
php绘制一个扇形的方法
Jan 24 #PHP
php绘制一条弧线的方法
Jan 24 #PHP
php绘制一个矩形的方法
Jan 24 #PHP
php绘制一条直线的方法
Jan 24 #PHP
php绘制圆形的方法
Jan 24 #PHP
php文件上传简单实现方法
Jan 24 #PHP
You might like
PHP 批量删除 sql语句
2009/06/05 PHP
探讨:parse url解析URL,返回其组成部分
2013/06/14 PHP
深入PHP许愿墙模块功能分析
2013/06/25 PHP
php微信公众号开发(3)php实现简单微信文本通讯
2016/12/15 PHP
阿里云PHP SMS短信服务验证码发送方法
2017/07/11 PHP
解决iframe的frameborder在chrome/ff/ie下的差异
2010/08/12 Javascript
基于pthread_create,readlink,getpid等函数的学习与总结
2013/07/17 Javascript
使用javascript实现有效时间的控制,并显示将要过期的时间
2014/01/02 Javascript
Javascript获取CSS伪元素属性的实现代码
2014/09/28 Javascript
javascript实现切换td中的值
2014/12/05 Javascript
js判断上传文件后缀名是否合法
2016/01/28 Javascript
Node.js中Request模块处理HTTP协议请求的基本使用教程
2016/03/31 Javascript
基于JavaScript实现轮播图代码
2016/07/14 Javascript
jQuery fadeOut 异步实例代码详解
2016/08/18 Javascript
详解vuelidate 对于vueJs2.0的验证解决方案
2017/03/09 Javascript
react.js CMS 删除功能的实现方法
2017/04/17 Javascript
详解Vue.js之视图和数据的双向绑定(v-model)
2017/06/23 Javascript
微信小程序地图绘制线段并且测量(实例代码)
2020/01/02 Javascript
vue-cli中实现响应式布局的方法
2021/03/02 Vue.js
对于Python中线程问题的简单讲解
2015/04/03 Python
举例讲解Python的Tornado框架实现数据可视化的教程
2015/05/02 Python
python使用xlrd实现检索excel中某列含有指定字符串记录的方法
2015/05/09 Python
在Django的上下文中设置变量的方法
2015/07/20 Python
解决Numpy中sum函数求和结果维度的问题
2019/12/06 Python
日本快乐生活方式购物网站:Shop Japan
2018/07/17 全球购物
Etam艾格英国官网:法国著名女装品牌
2019/04/15 全球购物
澳大利亚宠物食品和用品商店:PETstock
2020/01/02 全球购物
高三毕业典礼主持词
2014/03/27 职场文书
社区先进事迹材料
2014/05/19 职场文书
干部选拔任用方案
2014/05/26 职场文书
优秀团员事迹材料2000字
2014/08/20 职场文书
夫妻分居协议书范本(有子女版)
2014/11/01 职场文书
寻找成龙观后感
2015/06/12 职场文书
如何撰写出一份完美的商业计划书?
2019/07/12 职场文书
JVM之方法返回地址详解
2022/02/28 Java/Android