Wand未正确设置Jpeg图像分辨率

时间:2018-07-10 18:24:28

标签: python wand

我正在尝试调整jpeg图像的大小并扩大框架。为此,我对原始图像应用了调整大小,然后将其合成在较新的图像上:

with Image(blob=binary_data) as img:
    ...
    img.resize(width=new_width, height=long(2000))
    # Compose image to enlarge frame
    with Image(width=1571, height=2000, background=Color('white')) as dst_image:
        ...
        dst_image.composite(img, x, 0)
        img = dst_image
        img.resolution = (300,300)
        img.format = 'jpg'
        jpeg_bin = img.make_blob()

最后,我希望得到300dpi的分辨率。 Imagemagick命令 “ identify”显示的分辨率为300dpi,但这不是事实。确实,如果我打开它 使用Gimp可以显示72dpi的分辨率。

我正在使用Wand v.0.4.4。

我的代码错误吗? ...有什么想法吗?

1 个答案:

答案 0 :(得分:1)

@ fmw42:谢谢,这是单位定义的问题。修复之前,这是exiftools的输出:

  Resolution Unit                 : None
  X Resolution                    : 300
  Y Resolution                    : 300

我已修复此问题并插入了以下行:

  dst_image.units = 'pixelsperinch'

现在exiftools和gimp返回相同的分辨率:

  Resolution Unit                 : inches
  X Resolution                    : 300
  Y Resolution                    : 300

谢谢!