0

我试图从我通过 move_uploaded_file() 上传的 pdf 文件中获取一些信息。

我需要每页的缩略图来做一些颜色分析。此外,我需要以实际距离单位(不是像素)为单位的每页的宽度和高度。

有没有办法在imagick而不是imagemagick中将pdf转换为图像。只是因为我正在使用 imagick 实例进行颜色分析。

现在这适用于单个图像文件,但不适用于多页 pdf。该怎么办知道...?

/* Read the image */
$im = new Imagick($file);

/* Thumbnail the image */
$im->thumbnailImage(null, 200);

/* Overwrite it */
file_put_contents($file, $im);

/* Gather Info */
$width = $im->getImageWidth();
$height = $im->getImageHeight();
$ratio = $width / $height;


/* Calculate gray */

$pixel_count = 0;
$sum_gray = 0;

for ($row=0;$row<$height;$row++) {
    for ($col=0;$col<$width;$col++) {
        $pixel = $im->getImagePixelColor($col, $row);
        $rgb = $pixel->getColor();
        $this_gray = .299*$rgb['r'] + .587*$rgb['g'] + .114*$rgb['b'];
        $sum_gray += $this_gray;
        $pixel_count++;
    }
} 

$gray = (1-($sum_gray / $pixel_count) / 256)*100;

如果有人知道如何获取高度和宽度信息,请告诉我。

谢谢您的帮助!

4

0 回答 0