首页 / PHP / php生成图片的几个问题
php生成图片的几个问题
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了php生成图片的几个问题,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2110字,纯文字阅读大概需要4分钟。
内容图文
之前遇到的第一个问题是,使用php生成文字验证码时,总提示:
Warning: imagettftext(): Could not find/open font in /var/www/html/touming.php on line 11
或者
The image "http://localhost/img.php" cannot be displayed because it contains errors.
源代码如下:
<?php //1.生成真彩图 $img = imagecreatetruecolor(200, 200); //2.上色 $color=imagecolorallocate($img,255,255,255); //3.设置透明 imagecolortransparent($img,$color); imagefill($img,0,0,$color); //4.向画布上写字 $textcolor=imagecolorallocate($img,0,0,0); imagettftext($img, 50, 0, 10, 100, $textcolor, "myFonts/simsun.ttc", "测试"); //5.保存 header("Content-type: image/png"); imagepng($img); //6.释放 imagedestroy($img); ?>
上网没能找到原因,后面想难道是因为apache进程无权现读取myFonts文件夹问题,目前
myFonts文件的owner和group非apache,所以尝试把owner和group改为apache:
sudo chown -R apache myFonts
sudo chgrp -R apache myFonts
结果成功执行程序。
第二个问题
很早就知道有一种图片是没有背景的,图片中没有对象的地方是镂空的,没有背景,并非
背景为白色,在一些图片浏览器ps中可以看到灰白色相间的小方格,如以下这张图片,
也不知道这种图片就什么名字,更不知道php应该如何生成这种图片,今天找到一篇博文:
blog.sina.com.cn/s/blog_7196ad2d0100qy0u.html
很好的解决了我的问题。以下时博客原文:
---------------------------------------------------------------------------------------------------------------
最近做项目,前台用到很多的透明背景的文字图片,而且文字还用两种字体中英文混拼,
要求后台能根据用户输入自动生成相应图片。以前能,所有用到的图片都是用PS来做的,
这次可……没有办法,只好硬着头皮翻阅PHP GD文档了……终于……
imagecolortransparent
说明
int imagecolortransparent ( resource image [, int color] )
imagecolortransparent() 将 image 图像中的透明色设定为 color。image 是 imagecreatetruecolor() 返回的图像标识符,color 是 imagecolorallocate() 返回的颜色标识符。
注: 透明色是图像的一种属性,透明度不是颜色的属性。一旦设定了某个颜色为透明色,图像中之前画为该色的任何区域都成为透明的。
返回新透明色的标识符,如果省略 color 则返回当前透明色的标识符。
注: 透明度仅能通过 imagecopymerge() 和真彩色图像拷贝,不能用 imagecopy() 或调色板图像。
所以其他的也就水到渠成 了
1.生成真彩图
$img = imagecreatetruecolor(200, 200);
2.上色
$color=imagecolorallocate($img,255,255,255);
3.设置透明
imagecolortransparent($img,$color);
imagefill($img,0,0,$color);
4.向画布上写字
$textcolor=imagecolorallocate($im,0,0,0);
imagettftext($img, 50, 0, 10, 100, $textcolor, "simsun.ttc", "测试");
5.保存
imagepng($img,"aaa.png");
6.释放
imagedestroy($img);
原文:http://www.cnblogs.com/beita/p/3820635.html
内容总结
以上是互联网集市为您收集整理的php生成图片的几个问题全部内容,希望文章能够帮你解决php生成图片的几个问题所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。