2009-12-21 101 views
1

我想更改python中.bmp圖像的分辨率。 (即像素/英寸信息)。使用PIL,支持JPG圖像,例如,下面的代碼工作正常在Python中爲.bmp文件更改圖像分辨率

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

如果像一些GIMP圖像編輯軟件查看此,它顯示了每英寸像素爲75,75

但上述代碼在輸入圖像是.bmp文件時不起作用。

有人能告訴我如何更改python中任何圖像的圖像分辨率嗎?

回答

2

我懷疑有沒有很多程序在那裏尊重bmp分辨率。 Windows位圖都是96 dpi。

此外,它看起來好像PIL不支持位圖的分辨率參數。我的PIL/BmpImagePlugin.py只寫在$ 01000000的x & y決議(我不知道什麼是翻譯,但我猜「96 dpi」)。

docs告訴你如何編寫自己的擴展名..我想這將是一個非常簡單的複製PIL位圖插件接受分辨率作爲參數。

+0

+1好的解釋 – YOU 2009-12-21 09:30:59

+0

謝謝這個非常有用! – apt 2009-12-21 16:48:05

0

我認爲輸入文件可以是任何有效的格式和輸出需要,jpg,pcx,png,tiff,wmf for dpi參數我想,可能是我錯了,但是當我看着PIL源文件時,我沒有看到一個BMP文件。