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

そのディレクトリへの書き込み権限がないようです。permission(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 に答える