2011-09-29 17 views
7

Python Görüntü Kitaplığı'nı kullanarak bir Facebook profil resminin üstüne (jpg) kısmi şeffaflıklı bir PNG filigranı yerleştirmeye çalışıyorum. Şeffaf olması gereken kısım sadece beyaz olarak çıkar. İşte benim kodum:Python Görüntü Kitaplığı ile Şeffaflık

con = urllib2.urlopen('facebook_link_to_profile_pic') 
im = Image.open(cStringIO.StringIO(con.read())) 

overlayCon = urllib2.urlopen('link_to_overlay') 
overlay = Image.open(cStringIO.StringIO(overlayCon.read())) 

im.paste(overlay, (0, 0)) 

im.save('name', 'jpeg', quality=100) 

Birkaç farklı yol denedim, ancak işe yaramadı. Herhangi bir yardım takdir edilir.

cevap

6

paste'un üçüncü seçeneği bir maskedir (bkz. docs). Bir RGBA görüntüsünü kabul eder, bu nedenle en basit çözüm, üst üste bindirme resminizi tekrar kullanmaktır: im.paste(overlay, (0, 0), overlay).

+0

Teşekkürler! Bunu takdir ediyorum. Gerçekten bu kadar basit ... Dosya formatları için endişeleniyordum. – dchang

İlgili konular