我赞成@ypnos的回答,这是完全正确的。
但我想通过展示一个最近的新功能来补充它pdfimages
公用事业。
pdfimages
以前已知能够从 PDF 文件中提取图像(这是它唯一有用的目的)。但是,现在您还可以使用它来调查有关所使用图像的更多详细信息,而无需提取它们。
使用下一个命令,我使用新的方法查询某个 PDF 文件第 7 页和第 8 页上的所有图像的数据-list
范围:
pdfimages -list -f 7 -l 8 ct-magazin-14-2012.pdf
page num type width height color comp bpc enc interp object ID
---------------------------------------------------------------------
7 0 image 581 838 rgb 3 8 jpeg no 39 0
7 1 image 4 4 rgb 3 8 image no 40 0
7 2 image 314 332 rgb 3 8 jpx no 44 0
7 3 image 358 430 rgb 3 8 jpx no 45 0
7 4 image 4 4 rgb 3 8 image no 46 0
7 5 image 4 4 rgb 3 8 image no 47 0
7 6 image 4 6 rgb 3 8 image no 48 0
7 7 image 596 462 rgb 3 8 jpx no 49 0
7 8 image 4 6 rgb 3 8 image no 50 0
7 9 image 4 4 rgb 3 8 image no 51 0
7 10 image 8 10 rgb 3 8 image no 41 0
7 11 image 6 6 rgb 3 8 image no 42 0
7 12 image 113 27 rgb 3 8 jpx no 43 0
8 13 image 582 839 gray 1 8 jpeg no 2080 0
8 14 image 344 364 gray 1 8 jpx no 2079 0
Note,但是:这个版本pdfimages
是来自 Poppler 的(来自 XPDF 的)not(还?)支持这个新功能):
pdfimages -version
pdfimages version 0.20.2
Copyright 2005-2012 The Poppler Developers - http://poppler.freedesktop.org
Copyright 1996-2011 Glyph & Cog, LLC
The -list
该选项首次出现在 2012 年 3 月 1 日发布的 Poppler v0.19.0 中。
现在,上面的列表并没有直接告诉您图像的分辨率(“dpi”)。该值取决于:该图像在 PDF 页面上呈现的尺寸是多少?
PDF 可以轻松地在 PDF 文件的不同位置使用相同的图像,并针对每种情况使用不同的渲染大小。图像只需嵌入 PDF 一次,但可以“通过引用”多次使用/渲染(低效构建的 PDF 可能仍多次包含相同的图像,但这是一个不同的主题......)
现在让我们澄清查看各个列标题时可能出现的问题。他们的意思是什么?
page
num
type
- 图像类型。可能的值为:
image
(不透明图像),mask
(单色图像蒙版),smask
(软掩模图像)和stencil
(用于绘制颜色或图案的单色蒙版图像)。Note: PDF 中图像的透明度是通过使用两个单独的 PDF 对象创建的:一个用于图像,另一个用于蒙版或 smask。属于透明图像的 mask/smask 始终直接跟随列表中的图像。
width
height
color
- 图像色彩空间。可能的值为
gray
, rgb
, cmyk
, lab
(L*a*b),icc
(基于国际商会),index
(索引颜色),sep
(分离)和devn
(设备N)。
comp
bpc
enc
- The encoding(压缩)由图像使用。可能的值为:
image
(光栅图像——可以在内部使用通用的/Flate
or /LZW
压缩,但不是特殊的图像编码),jpeg
(JPEG 压缩),jpx
(JPEG2000压缩),jbig2
(JBIG2 压缩)和ccitt
(传真压缩)。
interp
object ID
- 文件内图像的 PDF 对象 ID(带有“生成编号”)。
更新(2016 年 3 月)
从 Poppler v0.25.0(2013 年 12 月 11 日发布)及更高版本开始,该命令pdfimages -list
现在包括新列,指示自动计算的x-ppi
(水平)和y-ppi
PDF 渲染器在 PDF 页面中显示的每个嵌入图像的(垂直)分辨率。
此外,还指示了每个图像(未压缩时)使用的大小(以字节/千字节为单位)及其大小压缩比(嵌入 PDF 中)。
显示与上面相同的文件的结果(使用 Poppler v0.42.0):
page num type width height color comp bpc enc interp objectID x-ppi y-ppi size ratio
------------------------------------------------------------------------------------
7 0 image 581 838 rgb 3 8 jpeg no 39 0 73 73 2107B 0.1%
7 1 image 4 4 rgb 3 8 image no 40 0 150 150 54B 112%
7 2 image 314 332 rgb 3 8 jpx no 44 0 150 150 19.0K 6.2%
7 3 image 358 430 rgb 3 8 jpx no 45 0 150 150 15.7K 3.5%
7 4 image 4 4 rgb 3 8 image no 46 0 150 150 62B 129%
7 5 image 4 4 rgb 3 8 image no 47 0 150 150 51B 106%
7 6 image 4 6 rgb 3 8 image no 48 0 150 150 62B 86%
7 7 image 596 462 rgb 3 8 jpx no 49 0 150 150 40.7K 5.0%
7 8 image 4 6 rgb 3 8 image no 50 0 150 150 86B 119%
7 9 image 4 4 rgb 3 8 image no 51 0 150 150 62B 129%
7 10 image 8 10 rgb 3 8 image no 41 0 150 150 157B 65%
7 11 image 6 6 rgb 3 8 image no 42 0 150 150 82B 76%
7 12 image 113 27 rgb 3 8 jpx no 43 0 151 152 1090B 12%
8 13 image 582 839 gray 1 8 jpeg no 2080 0 72 72 319B 0.1%
8 14 image 344 364 gray 1 8 jpx no 2079 0 150 150 4325B 3.5%
x-ppi
- 在 PDF 页面上呈现时图像的水平分辨率(以每英寸像素为单位)。
y-ppi
- 在 PDF 页面上呈现时图像的垂直分辨率(以每英寸像素为单位)。
size
- PDF 文件中嵌入图像的大小。使用以下后缀:“B”字节、“K”千字节、“M”兆字节和“G”千兆字节。
ratio