使用 Python 的图像库我想创建一个 PNG 文件。
我希望在打印此图像时,无需任何缩放,它始终会以已知且一致的“尺寸”打印在打印页面上。
分辨率是否编码在图像中?
如果是这样,我该如何指定它?
即使是这样,当它进入打印机时,这是否有任何相关性?
使用 Python 的图像库我想创建一个 PNG 文件。
我希望在打印此图像时,无需任何缩放,它始终会以已知且一致的“尺寸”打印在打印页面上。
分辨率是否编码在图像中?
如果是这样,我该如何指定它?
即使是这样,当它进入打印机时,这是否有任何相关性?
从 PIL 1.1.5 开始,有一种获取 DPI 的方法:
im = ... # get image into PIL image instance
dpi = im.info["dpi"] # retrive the DPI
print dpi # (x-res, y-res)
im.info["dpi"] = new dpi # (x-res, y-res)
im.save("PNG") # uses the new DPI
我找到了一种将 dpi 信息放入 png 的非常简单的方法:
im.save('myfile.png',dpi=[600,600])
不幸的是,我没有在任何地方找到这个文档,不得不深入研究 PIL 源代码。
打印机具有不同的打印分辨率。例如,如果您选择 200 DPI 的打印分辨率(或者如果它在打印机驱动程序中设置为默认值),那么 200 像素的图像应该是一英寸大小。
图像打印尺寸和分辨率都与打印特定比例和质量的图像相关。请记住,如果图像随后包含在桌面发布工作区(Word、InDesign)甚至网页中,则图像会受到父文档中任何指定分辨率的影响——这不一定会改变相对比例在桌面出版程序的情况下的图像,但会改变图像质量。
是的,所有图像都有一个分辨率属性,它回答了你一半的问题——我不知道 Python ......
很大程度上取决于您用于打印的软件。如果您将图像放置在 Word 文档中,它将根据 DPI 缩放,直到页面的宽度。如果您将其放在网页上,则 DPI 根本无关紧要。