imagecopy不能一直工作

时间:2013-11-01 03:02:47

标签: php gd

我遇到问题imagecopy $url变量上的某些图片不会出现,即使工作和非工作示例都有PNG$local变量从服务器加载透明图像,从远程服务器加载$url变量加载。我为$local提供了测试透明图片。

工作:

<?php
header("Content-type: image/png");
$url = imagecreatefrompng("url_removed.png");
$local = imagecreatefrompng("http://url_removed.png");
imagecopy($url, $local, 0, 0, 0, 0, 100, 100);
imagepng($url);
imagedestroy($url);
imagedestroy($local);
?>

无效:

<?php
header("Content-type: image/png");
$url = imagecreatefrompng("url_removed.png");
$local = imagecreatefrompng("http://url_removed.png");
imagecopy($url, $local, 0, 0, 0, 0, 100, 100);
imagepng($url);
imagedestroy($url);
imagedestroy($local);
?>

我甚至尝试使用imagecreatestring file_get_contents,但也可以使用某些PNG图像,但它与imagecreatefrompng不一样

在完成所有这些之后,我认为它与imagecopy有关......我该怎么做才能解决这个问题,还是有另一种简单的方法可以做到这一点?

1 个答案:

答案 0 :(得分:0)

我用两个代码进行测试,它可以正常运行

<?php
header("Content-type: image/png");
$url = imagecreatefrompng("http://i.imgur.com/F7Jpk9y.png");
$local = imagecreatefrompng("http://i.imgur.com/0A81XrP.png");
// use imagecopymerge instead and set the copied image opacity to 50
imagecopymerge($url, $local, 0, 0, 0, 0, 64, 64,50); 
imagepng($url);
imagedestroy($url);
imagedestroy($local);
?>

输出http://imgur.com/kMqQbrr