簡體   English   中英

當我在其上疊加另一個圖像時,PIL 會弄臟圖像

[英]PIL smudges image when I overlay another image on it

我正在使用以下代碼使用 PIL 將圖像疊加到另一個圖像上

path = "/home/blah.png"
background = Image.open(path)
product = Image.open("/home/51tmBaivYhL._SL75_.jpg")
background.paste(product, (20,40))
background.save("/home/newImage.jpg")

這些是我用作背景的圖像http://i.imgur.com/bwPFT.png ,產品http://i.imgur.com/Ig6qV.jpg這就是結果顯示為Z80791B3AE7D9FACB8FC844 ://i.imgur.com/JfGoS.jpg

將不勝感激我能得到的任何幫助。

謝謝。

編輯:另外,當我嘗試background.paste(product, (20,40), product)時,我收到錯誤“ValueError: bad transparent mask”

這個問題與 PIL 無關。 問題是背景是a.png,而您正在合成它,然后將其輸出為a.jpg。

.png 是無損的,非常適合像背景這樣的合成圖像。 .jpg 是有損的,非常適合照片等自然圖像。 當您 output 您的背景為 .jpg 時,它將包含壓縮偽影,即所謂的“污跡”。

Output 您的最終圖像為.png。 它會比 a.jpg 更多字節,但看起來會更好。

您正在打開具有透明度的背景 PNG 圖像並將結果另存為不具有透明度的 .JPG。 透明區域中的 colors 可能是您用於創建 PNG 的圖像編輯器的剩余部分。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM