PDF尺寸与实际内容尺寸

| 我目前正在使用php的imagick来将一些PDF转换为图像-这对于在输出过程中图像被“切掉”的微小细节效果很好。 这是由于PDF中包含的信息与实际内容尺寸之间的差异。 PDF报告为612x792 72ppi文档,但是当我在Mac上通过预览从中导出图像时,图像为1651x1275-这怎么可能? 显然,导出是正确的,因为在这些尺寸下可以正确查看图像-难道是PDF只是在宽度和高度混合的地方被错误地编码了?如何通过代码检测到这一点?同样,图像导出的大小不同(大得多),大约是大小的两倍,这使我相信imagick无法正确读取某些信息。 基本上,我想知道是否存在确定实际PDF内容大小的适当方法,以使从其中导出的图像具有最佳质量。 谢谢! 编辑:(添加代码)
<?php
$im = new Imagick();
$im->readImage(\"SomeTest.pdf\");
$im->setImageColorspace(255);
$im->setCompression(Imagick::COMPRESSION_JPEG);
$im->setCompressionQuality(60);
$im->setImageFormat(\'jpeg\');
$im->writeImages(\"SampleImage.jpg\");
?>
使用的pdf如下: http://www.pantone.com/pages/MYP_mypantone/software_downloader.aspx?f=3 另外,这是来自identifyImage()函数的imagick的输出,从文件大小来看似乎有点错误。
Array
(
    [imageName] => /tmp/magick-XXehkI8e
    [format] => PDF (Portable Document Format)
    [geometry] => Array
        (
            [width] => 612
            [height] => 792
        )

    [type] => TrueColor
    [colorSpace] => RGB
    [resolution] => Array
        (
            [x] => 72
            [y] => 72
        )

    [units] => Undefined
    [fileSize] => 50mb
    [compression] => Undefined
    [signature] => 9426f3fc4f45afd71941435a37d585d01e01d32458f3ca241e72892c2f7f35d5
)
    
已邀请:
PDF中的图像已按比例缩小到PDF中的某个尺寸(或者在Reader等中查看时会被裁剪)。 ImageMagick(我imagick的屁股-我-我用)使用GhostScript将PDF转换为图像。 GhostScript非常擅长呈现PDF文件。我想知道您是否传递了一些错误的信息。 我们可以看到一些代码吗?链接到您输入的PDF和输出的图像也很好。 我刚刚在您的PDF上运行了gs 8.71,它可以正常显示。您正在使用哪个版本的GhostScript?     
您应该注意,PDF本身是无分辨率的格式。页面是以数学方式描述的,除了浮点数所施加的限制之外,该数学方式不与任何特定的分辨率限制相关。 PDF仅在呈现到特定设备上时才真正具有分辨率(并且可能达到或可能不达到该设备的分辨率)。 \“但是图像呢?PDF中的图像肯定可以提供分辨率!” PDF中的图像表示为无单位的样本,它们本身没有分辨率,除非它们已在页面上实例化。我可以拍摄300 dpi的8.5 \“ x11 \” 1位图像并将其嵌入PDF中,但是可以将同一图像放入页面的内容流中,该空间可以填充整个8.5 \“ x11 \”空间,从而保持分辨率,或者可以将其呈现为更小的缩略图(通过比例尺创建更高的分辨率)-甚至那些“分辨率”也要等到页面实际呈现到设备后才适用。此外,不会阻止PDF渲染器进行双线性(或其他某种方式)插值以增加图像的表观分辨率。 举一个更具体的例子,如果我在96 dpi显示器上以100%的比例渲染PDF页面,则该页面的分辨率不大于96 dpi。如果我在1800 dpi照排机上渲染该PDF页面,则该页面的分辨率不大于1800 dpi。 如果我在96 dpi显示器上以100%呈现的PDF页面上以100%呈现300 dpi图像,则页面上图像的分辨率为96 dpi。如果我在1800 dpi照排机上以100%呈现的PDF页面上以100%的比例呈现300 dpi图像,则页面上图像的分辨率为300 dpi。 您从image magick看到的输出可能反映了8.5 \“ x 11 \”页面的PDF单位为612 x 792,而1个PDF单位等于1/72英寸。预览渲染似乎以约194 dpi的速度完成。     

要回复问题请先登录注册