PHP和GD在使用时似乎无法使用alpha格式从灰度类型的PNG创建图像imagecreatefrompng().结果令人难以置信的扭曲.
我想知道是否有人知道测试颜色类型的方法,以通知用户不兼容性?
例:
原始图片:http://dl.dropbox.com/u/246391/Robin.png
结果图片:http://dl.dropbox.com/u/246391/Robin_result.png
码:
<?php
$resource = imagecreatefrompng('./Robin.png');
header('Content-type: image/png');
imagepng($resource);
imagedestroy($resource);
Run Code Online (Sandbox Code Playgroud)
干杯,
阿隆
小智 5
我今天登陆这里,寻找一种方法来(通过php告诉)特定的.png图像是否是alpha-png图像
-David Jones的答案指向了正确的方向,真的很容易在php中实现:
file_get_contents仅加载该25'字节(确实存在!),而
ord()获得其ASCII值,以对其进行测试(在我的情况下为'6')
if(ord(file_get_contents($alpha_png_candidate, NULL, NULL, 25, 1)) == 6) {
is_alpha_png_so_do_something();
}
Run Code Online (Sandbox Code Playgroud)
实际上,为了确保与cms-user-generated-pages中的ie6向后兼容,我需要用 inline-block <spans>替换所有alpha-png <img>标签 -然后,alpha-png文件将用作 ms专有的CSS属性过滤器
.alpha_png_span{
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(
src='$alpha_png_candidate', sizingMethod='crop')
}
Run Code Online (Sandbox Code Playgroud)
...而且一切正常,谢谢!
保罗
| 归档时间: |
|
| 查看次数: |
4731 次 |
| 最近记录: |