PHP处理图像并在页面加载时首先显示它

时间:2011-04-25 15:42:12

标签: php image

我正在拍摄图像,对其进行一些处理以使其成为深蓝色调,并将其设置为页面正文中的背景图像。这里的代码完全按预期工作:

 $image = imagecreatefromjpeg($backimage);
 imagefilter($image, IMG_FILTER_GRAYSCALE);
 imagefilter($image, IMG_FILTER_CONTRAST,40);
 imagefilter($image, IMG_FILTER_BRIGHTNESS,-80);
 imagefilter($image, IMG_FILTER_COLORIZE, 10, 0, 40);  //112, 66, 20);

麻烦的是,它需要一些时间来处理,所以整个页面显示没有背景,然后在短暂的延迟后,出现背景图像(至少在firefox中),所以它看起来有点奇怪。我实际上更喜欢它首先加载,或者等到处理完成,然后显示整个事情。有什么建议?谢谢!

1 个答案:

答案 0 :(得分:1)

  

问题是,处理需要一些时间

使用缓存。您不希望每次请求时都在图像上运行这些效果。将结果存储在静态JPG文件中(使用imagejpeg()的第二个参数),并在必要时更新。

有关如何执行此操作的更详细建议(通常检查原始图像的“上次修改”时间是正确的方法;有时,它足以手动触发)您必须提供更多关于您的内容的背景信息正在做你的形象来自哪里。