Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/235.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP getimagesize的PDF->;斑点_Php_Oracle_Pdf_Getimagesize - Fatal编程技术网

PHP getimagesize的PDF->;斑点

PHP getimagesize的PDF->;斑点,php,oracle,pdf,getimagesize,Php,Oracle,Pdf,Getimagesize,我正试图实现将PDF上传添加到我继承的现有图像上传功能中的功能。我注意到我不能在PDF上使用getimagesize。有没有一种方法可以使用PHP确定PDF的尺寸或者-上传PDF时是否最好硬编码尺寸。选项1 pdfinfo.exe(XPDF工具的一部分)具有用于指定要获取维度的页面或所有页面的参数 <?php $output = shell_exec("pdfinfo ".$your_pdf_file_or_url); // find page count pre

我正试图实现将PDF上传添加到我继承的现有图像上传功能中的功能。我注意到我不能在PDF上使用getimagesize。有没有一种方法可以使用PHP确定PDF的尺寸或者-上传PDF时是否最好硬编码尺寸。

选项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";

?>
然后可以通过$width和$height访问尺寸


是否将PDF转换为JPEG格式,然后就不必考虑图像的大小了@EricLeschinski,如果可能的话,我想保留PDF,但我不反对使用插件来查找大小。这就是我的目的,我只是希望有一种更“内置”的方式来实现这一点。
$command = escapeshellcmd('identify -format "%wx%h" ' . $path_to_pdf) . '[0]';
$geometry = `$command`;
list($width, $height) = split("x", $geometry);