1

我有脚本可以用Imagick调整我的照片大小,然后保存。这是制作缩略图的代码thiumbnailImage();

<?php
  header('Content-type: image/jpeg');
  $image = new Imagick('test.jpg');
  $image->thumbnailImage(600, 0);
  echo $image;
?>

示例->调整大小示例只是 thumbnailImage(); .

这行得通。但是当我想用writeImage();.

<?php
  header('Content-type: image/jpeg');
  $image = new Imagick('test.jpg');
  $image->readImage('test.jpg');
  $image->thumbnailImage(600, 0);
  $image->writeImage('test_resized.jpg');
?>

它显示服务器错误。示例 ->使用 writeImage() 调整大小的示例;

4

3 回答 3

2

看来您可能没有对该目录的写入权限。将权限(CHMOD)设置为 777。

于 2012-07-07T22:26:55.217 回答
2

问题解决了。我没有权限 writeImage();

于 2012-07-07T22:31:29.720 回答
1

要调试错误,请尝试以下代码:

<?php
  error_reporting(E_ALL);
  ini_set('display_errors', 1);
  // header('Content-type: image/jpeg');  // note this is commented
  $image = new Imagick('test.jpg');
  $image->readImage('test.jpg');
  $image->thumbnailImage(600, 0);
  $image->writeImage('test_resized.jpg');
?>

注释掉header调用的原因是浏览器不会尝试将页面显示为图像并阻止您查看源代码或查看错误消息。

于 2012-07-07T22:21:56.493 回答