изменение разрешения изображения в Python для файла .bmp - PullRequest
1 голос
/ 21 декабря 2009

Я хочу изменить разрешение изображения .bmp в python. (то есть информация о пикселях / дюймах). Используя PIL, например, для изображения jpg, следующий код работает нормально

import Image 
im = Image.open("myImg.jpg)
im.save("output.jpg", dpi = (75, 75) )

Если вы видите это в каком-либо программном обеспечении для редактирования изображений, например, в GIMP, он показывает число пикселей на дюйм как 75, 75.

Но приведенный выше код не работает, когда входное изображение представляет собой файл .bmp.

Может кто-нибудь сказать мне, как изменить разрешение изображения для любого изображения в Python?

Ответы [ 2 ]

2 голосов
/ 21 декабря 2009

Я подозреваю, что не так много программ, поддерживающих разрешение bmp. Все растровые изображения Windows имеют разрешение 96 точек на дюйм.

Кроме того, похоже, что PIL не поддерживает параметр разрешения для растровых изображений. Мой PIL/BmpImagePlugin.py просто пишет в $ 01000000 для разрешения x & y (я не уверен, к чему это приведет, но я бы предположил "96 dpi").

Есть документы , которые говорят вам, как написать собственное расширение. Я думаю, было бы довольно просто сделать копию плагина растрового изображения PIL, который принимал разрешение в качестве параметра.

0 голосов
/ 21 декабря 2009

Я думаю, что входной файл может быть любого допустимого формата, и вывод должен быть, jpg, pcx, png, tiff, wmf для параметра dpi. Я думаю, может быть, я ошибаюсь, но когда я смотрел исходные файлы PIL, я не не вижу файлов BMP.

...