将DPI信息存储在EPS图像中

时间:2018-10-02 06:57:45

标签: python python-imaging-library dpi eps

我正在尝试将DPI信息存储在带有Pillow库的封装PostScript(EPS)图像中。

例如:

from PIL import Image

size = 650, 827
path = 'grey.eps'

image = Image.new('L', size, color='grey')
image.save(path, dpi=(300, 300))

但是我无法阅读以下信息:

image = Image.open(path)
dpi = image.info['dpi']
print(dpi)

我得到:

Traceback (most recent call last):
  ...
KeyError: 'dpi'

EPS图像中可能有DPI信息吗?还是Pillow库的局限性?

1 个答案:

答案 0 :(得分:2)

您当然不能在EPS中存储“ dpi信息”。图像的DPI取决于其打印方式。

如果您拍摄一张100x100样本的图像并在1英寸的正方形上打印,则该图像的dpi为100 dpi。如果我拍摄同一张图像并在2英寸的正方形上打印,则该图像的dpi为50 dpi。

EPS文件的要点之一是您可以重新缩放EPS以适合页面的内容,因此图像的dpi完全取决于对其应用的缩放比例。

EPS不是一种简单的位图格式,例如TIFF,PostScript是一种完整的编程语言,它包含用于各种矢量绘图操作的原语以及位图。