PHP图象处理之透明背景的gif和png图片的一些问题

1,直接读取有透明背景的PNG格式文件,然后直接输出,背景变成了黑色,gif则没有这种情况。

解决方法:使用

imagesavealpha ($image,

true),此函数是针对png格式的.

$im=imagecreatefrompng("demo_1.png");

imagesavealpha($im,

true);//设置标记以在保存 PNG 图像时保存完整的 alpha

通道信息。

header(‘Content-type:

image/png‘);

imagepng($im);

imagedestroy($im);

?>

注意一点:不是所有的浏览器都支持

alpha 通道,如果在你的浏览器上碰到问题,试着用兼容 alpha 通道的浏览器(例如最新版的

Mozilla)重新加载脚本。

经测试,在IE中显示效果不理想(但图片仍然是透明的,保存下来看下就知道),背景变成了灰色.

2,在处理(比如缩小,剪切)有透明背景的gif和png图片然后输出时,图片透明部分变成了黑色。

示例代码如下:

$size

= 300;

$image=imagecreatetruecolor($size,

$size);//创建图片

$back =imagecolorallocatealpha($image, 255, 255,

255,127);//加透明颜色,其实好象没什么效果。-_-!

//读取图片

$im=imagecreatefrompng("demo_1.png");

imagecopyresampled($image,$im,10,20,0,0,128,128,128,128);//合拼图片

header(‘Content-type:

image/png‘);

imagepng($image);

imagedestroy($image);

?>

效果是图片背景变成了黑色。

解决办法:使用imagecreate()而不是用imagecreatetruecolor()创建图片。

因为imagecreatetruecolor()返回一个图像标识符,代表了一幅大小为

x_size 和 y_size 的黑色图像,

看下帮助手册就知道了。

但这种方法仍然有bug,用于png时,png有部分颜色失去,变成了透明。

解决办法:未知,有知道的告诉我一声,在下先谢谢了。

3.php生产透明背景图片

$wite =

ImageColorAllocate($ni,255,255,255);//填充的背景色你可以重新指定,我用的是白色

imagefilledrectangle($ni,

0, 0, $dstW, $dstH, $wite);

ImageColorTransparent($ni, $wite);

不过现在的方法还不是太理想。继续整理中~~~~

原文:http://www.cnblogs.com/wayne173/p/3741869.html

php 图片扣背景透明,php 处理透明背景的图片时的问题相关推荐

  1. .net的label的背景如何设置成为透明_css如何设置背景图片?background属性添加背景图片...

    在前端开发过程中,为了页面的美观,往往都会给html页面添加背景图片.那么如何利用css设置html中用图片做背景?本章就给大家介绍css怎样设置背景图片.有一定的参考价值,有需要的朋友可以参考一下, ...

  2. CSS实现背景图片透明文字不透明效果的两种方法

    网页设计中经常要在背景图上放一些文字介绍,这就需要背景图片能有透明效果以便突出显示文字信息,经多方查阅,终于找到了2种有趣的方法. 1.在文字层添加rgba样式实现半透明效果 方法: 背景图片层添加样 ...

  3. 如何实现背景/背景图片透明文字不透明

    如何实现背景/背景图片透明文字不透明 第一种情况,背景为自定义颜色 第二种情况,背景为图片 总结: 第一种情况,背景为自定义颜色 直接给父级背景颜色设置background:rgba();就可以了: ...

  4. 怎么将素材图片背景变透明?如何一键抠除图片背景?

    我们在提取一些素材图片的时候,可能会因为图片格式等原因,使原本背景透明图片变成了纯色背景图片.这时候我们需要使用抠图功能去除图片背景色,但是对不会用ps的小伙伴来说将图片背景变透明就比较困难了,所以小 ...

  5. Google图片存储格式WebP增加与PNG类似背景透明效果

    Google近日在博客上通报了他们提出的新型图片存储格式 - WebP - 的最新进展.Google有意让WebP成为新的网络图形存储格式标准以挑战JPEG.PNG等格式的地位.从博文中我们了解到,W ...

  6. JavaScript 清除图片背景颜色 使之透明

    主要JS /**清除图片背景颜色 **/ function removeImgBg(img) {//背景颜色 白色const rgba = [255, 255, 255, 255];// 容差大小co ...

  7. c语言给bmp图片加滤镜,关于BMP位图透明通道的详解制作教程, 教你输出透明的BMP位图...

    我是sjmhiex啊月谢谢大家的支持  百度贴吧:sjmhiex吧 QQ群:243153684 BMP支持透明比较常见的方法有两种: 一种是32位图,直接就可以是透明的,还可以是半透明效果,一般都是用 ...

  8. HTML中背景透明有阴影,透明PNG在网页有阴影的解决方法

    做自己的SS站LOGO时,我用的是PNG图片,PS时做的是透明背景,上传到网站后在本机测试也是透明(如图一),不过之后在很多别人的电脑上看时图片出现了水渗般的背景色(如图二),问了很多朋友,以为与电脑 ...

  9. 如何将背景图改为透明(透明就是我们看到的方格图)

    1 2 3 4 5 6 7 分步阅读 很多时候需要将一张图片的底色变得透明.本文描述了使用PS将图片的一部分变得透明的方法.本例将一段艺术字的背景去掉,将背景透明的文字单独保存成图片,这样以后将这段文 ...

  10. 设置背景透明 html5,webview的背景如何设置成透明的?

    http://ask.dcloud.net.cn/question/4503 iOS - 5.0+ (支持): iOS平台不支持"transparent"背景透明样式,默认背景使用 ...

最新文章

  1. Hexo 个人博客 SEO 优化(3):改造你的博客,提升搜索引擎排名
  2. 单纯形法(三)(概念部分)
  3. java 代码效率_Java效率
  4. 数学之美笔记(十三)
  5. 【天工Godwork精品教程】任务一:创建工程(导入相片、编辑相机参数、导入POS)
  6. Java——获取和设置多线程的名称
  7. 分享20个Android游戏源代码。以后看看。
  8. zabbix自动发现监控redis数据库
  9. Nginx 轻松搞定跨域问题!
  10. PLC编程从入门到精通视频教程【副业学习会】
  11. jpg怎么合成一份_怎么将多个jpg合并成一个pdf
  12. easybcd卸载linux系统,Windows 8.1和Ubuntu 14.04双系统卸载Ubuntu参考教程
  13. mysql 根据经纬度查询范围点
  14. 开源是不是程序员悲剧的根源?
  15. MySQL Expression 2 of SELECT list is not in GROUP BY clause and contains nonaggregated column yous
  16. 多看阅读设置自动翻页教程
  17. 7-2 求π的近似值
  18. 侯捷C++->头文件与类的声明
  19. ipad wifi信号测试软件,总有适合你 iPad六种无线上网方式汇总
  20. threejs加载C4D模型及材质渲染实例

热门文章

  1. pb 使用mysql_pb连接mySql数据库
  2. 微信公众平台源码分享,把你的生意做到微信里
  3. (综述,讲得很好)基于3DMM的三维人脸重建技术总结
  4. [ECCV2020]Beyond 3DMM Space: Towards Fine-grained 3D Face Reconstruction
  5. 雷神台式计算机配置,雷神新用户手册:拿到新电脑时如何简易设置参数!
  6. kuangbin专题 专题1 简单搜索
  7. java数据结构银行叫号_数据结构C语言版利用队列结构实现银行叫号系统要..._结构工程师_帮考网...
  8. 初级程序员和二级Java哪个难,软考初级程序员和计算机二级哪个更受欢迎
  9. 计算机服装辅助设计,计算机辅助高校服装设计的论文
  10. 实验固体力学类毕业论文文献包含哪些?