解决GD中文乱码问题


Posted in PHP onFebruary 14, 2007

今天仔细研究了下GD的一些相关技术,顺手也研究下GD中文乱码的问题。

  使用GD库输出中文字符串,调用imagestring是没有用的。需要使用imagettftext()函数。imagettftext函数的具体使用就参考手册啦。

  下面给个使用实例:

   


$pic=imagecreate(250,30); 
$black=imagecolorallocate($pic,0,0,0); 
$white=imagecolorallocate($pic,255,255,255); 
$font="C://WINDOWS//Fonts//simhei.ttf";  //这里的路进需要注意下,必须是字符的路径
$str ='php'.iconv('gb2312','utf-8','面对对象')." www.phpobject.net"; 
imagettftext($pic,10,0,10,20,$white,$font,$str);
      

    前面我给出一个简单的GD水印实例,只举例说明了使用图片如何水印的,这里给出一个文字水印的简单代码。

 


<?php 
$pic
=imagecreate(250,30); 
$black=imagecolorallocate($pic,0,0,0); 
$white=imagecolorallocate($pic,255,255,255); 
$font="C://WINDOWS//Fonts//simhei.ttf";  
$str ='php'.iconv('gb2312','utf-8','面对对象')." www.phpobject.net"
imagettftext($pic,10,0,10,20,$white,$font,$str); header("Content-type: image/jpeg");
$filename='../src/images/photo.jpg';
$im=imagecreatefromjpeg($filename);
imagecopymerge($im,$pic,0,0,0,0,250,30,50);
imagejpeg($im);
?>  
     

 
PHP 相关文章推荐
常用表单验证类,有了这个,一般的验证就都齐了。
Dec 06 PHP
php中关于普通表单多文件上传的处理方法
Mar 25 PHP
PHP $_FILES中error返回值详解
Jan 30 PHP
php像数组一样存取和修改字符串字符
Mar 21 PHP
一个非常完美的读写ini格式的PHP配置类分享
Feb 12 PHP
深入探究PHP的多进程编程方法
Aug 18 PHP
PHP is_array() 检测变量是否是数组的实现方法
Jun 13 PHP
PHPStrom 新建FTP项目以及在线操作教程
Oct 16 PHP
thinkPHP中验证码的简单实现方法
Dec 05 PHP
php连接MSsql server的五种方法总结
Mar 04 PHP
PHP删除数组中特定元素的两种方法
Feb 28 PHP
Smarty模板类内部原理实例分析
Jul 03 PHP
使用apache模块rewrite_module (转)
Feb 14 #PHP
用PHP的ob_start();控制您的浏览器cache!
Feb 14 #PHP
谈谈PHP的输入输出流
Feb 14 #PHP
修改了一个很不错的php验证码(支持中文)
Feb 14 #PHP
PHP数据缓存技术
Feb 14 #PHP
再次研究下cache_lite
Feb 14 #PHP
cache_lite试用
Feb 14 #PHP
You might like
php 发送带附件邮件示例
2014/01/23 PHP
php判断字符串在另一个字符串位置的方法
2014/02/27 PHP
PHP采集类Snoopy抓取图片实例
2014/06/19 PHP
PHP使用递归方式列出当前目录下所有文件的方法
2015/06/02 PHP
PHP实现导出带样式的Excel
2016/08/28 PHP
PHP大文件分片上传的实现方法
2018/10/28 PHP
javascript xml为数据源的下拉框控件
2009/07/07 Javascript
js event事件的传递与冒泡处理
2009/12/06 Javascript
jQuery对表单元素的取值和赋值操作代码
2011/05/19 Javascript
Bootstrap table两种分页示例
2016/12/23 Javascript
微信JS SDK接入的几点注意事项(必看篇)
2017/06/23 Javascript
nodejs 十六进制字符串型数据与btye型数据相互转换
2018/07/30 NodeJs
vue路由插件之vue-route
2019/06/13 Javascript
Vue发布项目实例讲解
2019/07/17 Javascript
微信小程序 冒泡事件原理解析
2019/09/27 Javascript
vue 组件销毁并重置的实现
2020/01/13 Javascript
vue-路由精讲 二级路由和三级路由的作用
2020/08/06 Javascript
Python编程入门的一些基本知识
2015/05/13 Python
Python实现数据库并行读取和写入实例
2017/06/09 Python
Python实现的多线程同步与互斥锁功能示例
2017/11/30 Python
PyCharm安装第三方库如Requests的图文教程
2018/05/18 Python
python 数字类型和字符串类型的相互转换实例
2018/07/17 Python
GitHub 热门:Python 算法大全,Star 超过 2 万
2019/04/29 Python
python之mock模块基本使用方法详解
2019/06/27 Python
Python实现计算长方形面积(带参数函数demo)
2020/01/18 Python
Python实现检测文件的MD5值来查找重复文件案例
2020/03/12 Python
pycharm 使用anaconda为默认环境的操作
2021/02/05 Python
python FTP编程基础入门
2021/02/27 Python
Python  Asyncio模块实现的生产消费者模型的方法
2021/03/01 Python
涂鸦板简单实现 Html5编写属于自己的画画板
2016/07/05 HTML / CSS
农林环境专业求职信
2014/03/13 职场文书
股权投资意向书
2014/04/01 职场文书
工作年限证明模板
2015/06/15 职场文书
2016年清明节网上祭英烈活动总结
2016/04/01 职场文书
为什么不建议在go项目中使用init()
2021/04/12 Golang
SpringBoot中获取profile的方法详解
2022/04/08 Java/Android