首页 > 后端开发 > php教程 > 用imagettftext在图片下输入字符,无法在浏览器中生成图片

用imagettftext在图片下输入字符,无法在浏览器中生成图片

WBOY
发布: 2016-06-13 12:59:16
原创
1416 人浏览过

用imagettftext在图片上输入字符,无法在浏览器中生成图片
我imagettftext函数在图片上写入汉字字符串,可是却无法在浏览器中输出图片,使用imagepng($im,'x.png');可以将图片输出,但是如果直接输出到浏览器却不行,求高手调教啊。以下我的代码

<br />
<?php<br />
Header('Content-type: image/png');<br />
putenv('GDFONTPATH=C:\WINDOWS\Fonts');<br />
$button_text='Button按钮';<br />
$button_text=$button_text.rand(30, 50);<br />
$im=imagecreatetruecolor(400, 200);<br />
$black=imagecolorallocate($im, 0, 0, 0);<br />
$white=imagecolorallocate($im, 255, 255, 255);<br />
imagefill($im, 0, 0, $black);<br />
imagettftext($im,30,30, 0,150, $white,'MSYH.TTF', $button_text);<br />
imagepng($im);//使用imagepng($im,'x.png');可以生成x.png,图片也有文字。<br />
imagedestroy($im);<br />
?><br />
登录后复制

------解决方案--------------------

引用:
引用:

引用:

没有任何错误提示啊,浏览器一片空白,不过如果用ie浏览器的话就出现一些乱码。我尝试用imagestring替代imagettftext就可以正常输出了,前提是我要去掉中文字符……


imagestring不支持中文汉字。只能yong imagettftext.如果是乱码,证明是图片生成前可能有输……

utf-8有两种格式,一种是utf-8无bom的格式,一种是由bom头的,改为无bom头的
------解决方案--------------------
引用:
我imagettftext函数在图片上写入汉字字符串,可是却无法在浏览器中输出图片,使用使用imagepng($im,'x.png');可以生成x.png,图片也有文字。

这只是你的程序文件带有 BOM 头。去掉就好了
相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板