想象 - 获取PDF文件每个页面的缩略图

时间:2013-01-04 17:23:40

标签: pdf imagemagick thumbnails imagick multipage

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

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

有没有办法在想象力而不是imagemagick中从pdf转换为图像。只是因为我正在使用imagick instace进行颜色分析。

现在这适用于单个图像文件,但不适用于多页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;

如果有人知道如何获取高度和宽度信息,plaes让我知道。

感谢您的帮助!

0 个答案:

没有答案