我有一個大圖像,我在PIL中調整大小,使其寬度爲250像素。這是它在我的網站上顯示的寬度。Python PIL,保存質量時調整大小和保存
但是,該決議是非常糟糕的。我發現它已將dpi從180更改爲96.如果我在Windows Paint等程序中調整圖像大小,則它會保持180 dpi。這個Paint-resized圖片在我的網站上看起來好多了。 (油漆調整大小的圖像是40KB,而PIL調整圖像16KB)
如何保持DPI(或將其設置爲一些最大看起來很不錯的網站上)
我調整本使用PIL:
image = image.resize((new_width, new_height), Image.ANTIALIAS)
image.save(filepath)
我曾嘗試:
dpi = image.info['dpi'] # (180, 180)
image.save(filepath, dpi = dpi)
,但它沒有什麼區別。 dpi是180,但分辨率仍然很差。我猜在調整大小時需要設置dpi。
編輯:
這個問題似乎是保存,而不是調整大小。即使我從Paint-resized圖像開始(因此不要在PIL中調整圖像大小),它仍然將其保存爲96 dpi(16kb)的蹩腳質量,保持原樣。
這是我試過的解決方案,它沒有工作 – user984003
塗料只是忽略了DPI 。但是網頁瀏覽器也是如此,除非您專門製作Retina特定(或非Apple等效)的CSS。如果寬度爲250像素,並將其放置在250像素的'img'標籤中,則DPI無關緊要。 – abarnert
有些東西是不同的,因爲40kb圖像看起來比16kb圖像更好,即使它們都是250px寬。 – user984003