8

アップロードされたすべてのファイルを 72 dpi に変更する必要があります。私はphp imagick拡張機能を使用しています。

私が試したのは次のとおりです(使用している画像は300dpiです):

$image = new Imagick();
$image->setResolution(72,72) ;
$image->readImage($img);
$image->resampleImage  (72,72,imagick::FILTER_UNDEFINED,1);
$image->writeImage($target)

これは何もないようです。画像はアップロードされていますが、300dpiのままです

4

3 に答える 3

8

MatTheCat の答えは的を射ています。setImageUnits()また、センチメートルではなくインチで機能することを確認することもできます。

$image->setImageUnits(imagick::RESOLUTION_PIXELSPERINCH);
$image->setImageResolution(72,72);

dpi を変更するためだけにリサンプリングする必要はありません。

dpi だけを変更してもファイル サイズには影響せず、再サンプリングと印刷にのみ適用されることに注意してください。

于 2012-12-06T19:20:39.867 に答える
2

setResolution ではなく setImageResolution を使用する必要があるようです: http://www.php.net/manual/fr/function.imagick-setresolution.php#95533

于 2010-10-11T15:57:11.823 に答える