【发布时间】:2012-09-27 17:09:40
【问题描述】:
我正在尝试将 200 dpi 的 JPEG 文件转换为 PDF 文件,但是,当我将文件另存为 PDF 时,我认为它会将 dpi 更改为 72,从而使图像更大。最初尝试将 JPEG 图像缩放到更小的尺寸时,我遇到了类似的问题,并且能够通过在保存图像时指定 dpi 来解决该问题。
im = Image.open("Image.jpg")
dpi=im.info['dpi']
if im.size == (2592, 1728):
out = im.resize((1188,792), Image.ANTIALIAS)
elif im.size == (1728,2592):
out = im.resize((792,1188), Image.ANTIALIAS)
out.save(project, dpi=dpi)
现在,当我尝试将此 JPEG 保存为 PDF 时,指定 dpi 似乎没有任何区别,并且我得到的图像比我的原始图像大,看起来它具有较低的 dpi。使用 PIL 从 JPEG 转换为 PDF 时,有没有办法保持一致的分辨率?还是有更好的方法让我这样做?
这就是我将文件目录从 JPEG 转换为 PDF 的方法:
for infile in listing:
outfile = destpath + os.path.splitext(infile)[0] + ".pdf"
current = path + infile
if infile != outfile:
im = Image.open(current)
dpi=im.info['dpi']
im.save(outfile, "PDF", Quality = 100)
【问题讨论】:
-
PIL 从 jpeg 中读取的 dpi 值是多少?实际上是 200 吗?
-
@jedwards 是的,我在里面扔了一个打印声明,上面说 jpeg 的 dpi 是 (200,200)。
-
我很惊讶 PIL 完全支持 PDF。我确定这是原始转换。
标签: python pdf image-processing python-imaging-library resolution