【发布时间】:2010-11-30 12:19:12
【问题描述】:
我正在尝试使用灰度滤镜显示图像。这是我的代码:
$images = glob('gallery/*small*');
shuffle($images);
array_splice($images, 3);
$imgHandles = array();
$imgBuffered = array();
for( $i = 0; $i < 3; $i++)
{
$imgHandles[$i] = imagecreatefromstring( file_get_contents($images[$i]) );
imagefilter( $imgHandles[$i], IMG_FILTER_GRAYSCALE );
ob_start();
imagepng( $imgHandles[$i] );
$imgBuffered[$i] = ob_get_contents();
ob_end_clean();
imagedestroy( $imgHandles[$i] );
}
并输出:
for( $i = 0; $i < 3; $i++ )
{
echo "<a href=\"gallery.php\">
<img class=\"photo\" src='data:image/png;base64,".base64_encode( $imgBuffered[$i] )."' /></a>";
}
在opera、ff、chrome、safari 中一切正常,但ie6 不显示图像。为什么?
我在页面上编写了代码:http://dean.edwards.name/weblog/2005/06/base64-ie/ 我看到图片,但在几秒钟内它们会隐藏起来......我真的不知道为什么。你能帮我解决这个问题吗?
【问题讨论】:
标签: php image internet-explorer-6 gd