1

継承した既存の画像アップロード機能に PDF アップロードを追加する機能を実現しようとしています。PDF で getimagesize を使用できないことに気付きました。PHPを使用してPDFの寸法を決定する方法はありますか? - または - PDF をアップロードするときに寸法をハードコーディングしたほうがよいでしょうか。

4

1 に答える 1

2

オプション1

pdfinfo.exe (XPDF ツールの一部) には、寸法を取得するページまたはすべてのページを指定するパラメーターがあります。

<?php
    $output = shell_exec("pdfinfo ".$your_pdf_file_or_url);

    // find page count
    preg_match('/Pages:\s+([0-9]+)/', $output, $pagecountmatches);
    $pagecount = $pagecountmatches[1];

    // find page sizes
    preg_match('/Page size:\s+([0-9]{0,5}\.?[0-9]{0,3}) x ([0-9]{0,5}\.?[0-9]{0,3})/', 
         $output, $pagesizematches);
    $width = round($pagesizematches[1]/2.83);
    $height = round($pagesizematches[2]/2.83);

    echo "pagecount = $pagecount <br>width = $width<br>height = $height";

?>

http://www.foolabs.com/xpdf/download.html

PHP/Linux から PDF のレイアウト モード (横または縦) を取得します。

PHPはPDFファイルのプロパティで高さと幅を取得します

オプション 2

Image Magick がインストールされた Linux サーバーを使用している場合:

$command = escapeshellcmd('identify -format "%wx%h" ' . $path_to_pdf) . '[0]';
$geometry = `$command`;
list($width, $height) = split("x", $geometry);

次に、$width と $height を介して寸法にアクセスできます。

http://forums.phpfreaks.com/topic/134081-find-out-width-and-height-of-a-given-pdf-file/

于 2012-10-05T15:04:57.033 に答える