Разрешение изображений в формате JPEG неправильно установлено 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()

В конце я бы ожидал разрешение 300 точек на дюйм. Команда Imagemagick "определить" показывает разрешение 300 точек на дюйм, но это не так; действительно, если я открою его с Gimp, он показывает разрешение 72 точек на дюйм.

Я использую Wand v.0.4.4.

Мой код неверен? ... Есть идеи?

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

Спасибо!

Другие вопросы по тегам