一、問題
在使用圖片的時候有時候我們希望把背景變成透明的,這樣就只關注於圖片本身。比如在連連看中就只有圖片,而沒有背景,其實我個人感覺有背景好看一點。
二、解決
我們需要使用RGBA(Red,Green,Blue,Alpha),將alpha的透明度變為0,這樣就可以了,但是效果不是很好,如果想好一點的操作,個人覺得要摳圖。后面再來優化。
1 from PIL import Image 2
3 img = Image.open(r".\images\element_2.png") 4 img = img.convert("RGBA") # 轉換獲取信息 5 pixdata = img.load() 6
7 for y in range(img.size[1]): 8 for x in range(img.size[0]): 9 if pixdata[x, y][0] > 220 and pixdata[x, y][1] > 220 and pixdata[x, y][2] > 220 and pixdata[x, y][3] > 220: 10 pixdata[x, y] = (255, 255, 255, 0) 11 img.save(r".\images\element__2__new.png")
三、結果呈現
處理之前:
處理之后:
四、總結
Python利用PIL庫處理圖片還是方便,對於具體的處理過程還是要去參考一下前人所寫的內容,這里做一個簡單的介紹。比如摳圖之類的內容后面實現了,在進行補充。