2011-10-25 6 views
3

したがって、私はimagickを使用してPDFを画像に変換しています。すべてが単一ページのPDFのためにうまくいくが、私は複数のページpdfを持っていた。複数ページのPDFのすべてのページをPHPの画像に変換すると、画像に重複する結果が生じます

私はここに複数のページに対処する方法の例を見つけました:http://php.net/manual/en/function.imagick-appendimages.phpので、私はそのコードを取った:

$im = new Imagick($src); 
    $im->readImage($src); 
    $im->resetIterator(); 

    $ima = $im->appendImages(true); 
    $ima->setImageFormat('jpg'); 

    header("Content-Type: image/jpeg"); 
    print $ima; 

これは、それは問題があることであるPDFファイルの各ページに画像を生成することで動作しますPDFは画像に2回表示されます。したがって、3ページのPDFが6ページの単一画像として表示されます。

Here is an example PDF およびresulting imageは、上記のコードで作成しました。

これは何が起こっているのですか?


解像度

tanduの回答に基づいて、これはトリック

$im = new Imagick($src); 
    $im->resetIterator(); 

    $ima = $im->appendImages(true); 
    $ima->setImageFormat('jpg'); 

    header("Content-Type: image/jpeg"); 
    print $ima; 

答えて

2

Imagickコンストラクタは、指定したファイルからイメージをロードしに行きました。 readImage()を実行すると、再度ロードされます。これらの2つのうちの1つだけが必要です。

+0

ありがとうございました – Jason

関連する問題