2011-04-20 49 views
1

我正在使用PIL python庫進行一些批量複製 - 從圖像複製到圖像。我昨天開始工作,但突然間,當我重新啓動計算機時,程序將透明度視爲黑色,並且粘貼的圖像使用所粘貼圖像的調色板。希望這不是太混亂了。這裏是我的代碼透明度在Windows和程序中被認爲是黑色

import Image 
imagein = Image.open("ramza.png") 
imagein.show() 
x, y, w, h = (0, 0, 128, 128) 
box = (x, y, x + w, y + h) 
region = imagein.crop(box) 
imageout = Image.open("Template.png") 
imageout.show() 
imageout.paste(region, box) 
imageout.show() 
imageout.save("fn.png") 

回答

0

要確認你的粘貼區域是混合使用該地區的阿爾法層的模板圖像,使用mask關鍵字參數和使用區域的圖像作爲面膜。它會自動使用alpha圖層進行混合。

下面的代碼:

import Image 
imagein = Image.open("png-transparency.png") 
x, y, w, h = (0, 0, 128, 128) 
box = (x, y, x + w, y + h) 
region = imagein.crop(box) 
imageout = Image.open("bigtest1.jpg").convert('RGBA') 
imageout.paste(region, box, mask=region) 
imageout.save("fn.png") 

我不知道如何與你的調色板問題繼續進行。也許你可以發佈一些示例圖片和不同的調色板來證明這個問題?

+0

它實際上只是在幾個小時後就修好了。呵呵。 – Nick 2011-04-21 20:44:19