PHP5.4とImageMagickでjpgの解像度を指定する
| バージョン |
|---|
| php5.4.16 |
| ImageMagick 6.7.8-9 |
pdfからラスタライズしたjpgはデフォルトで72dpiになります。
解像度を指定するにはsetOption(‘density’, 300);というように指定します。
画像読み込みするreadImageの前で指定する必要があります。
$im = new Imagick();
$im->setOption('density', 300);
$im->readImage('/tmp/sample.pdf');
for ($i = 0; $i < $im->getImageScene(); $i++) {
$im->setIteratorIndex($i);
$im->setImageFormat('jpg');
$im->writeimage('/tmp/page-' . $i . '.jpg');
}
$im->destroy();
これで300DPIのjpg画像が出力されます。ghostscriptのライブラリを使用しているのでPDFBoxよりImagemagickの方がラスタライズの処理は高速のようです。

KHI入社して退社。今はCONFRAGEで正社員です。関西で140-170/80~120万から受け付けております^^
得意技はJS(ES20xx),Java,AWSの大体のリソースです
コメントはやさしくお願いいたします^^
座右の銘は、「狭き門より入れ」「願わくは、我に七難八苦を与えたまえ」です^^


コメント