私よりもPythonImageLibraryをよく知っている人に簡単な質問があります。アルファチャネルを使用したpng画像があり、上2行のピクセルを完全に透明にしたい。それでおしまい!これまでのところ、私の努力により上位2行が透明になっていますが、元の画像ではアルファチャネル情報が失われています。誰もがこれを達成するための最良の方法を知っていますか?
質問する
2619 次
2 に答える
4
あなたはこのようにすることができます。
img = Image.open("withAlpha.png")
p = img.load()
for y in range(2):
for x in range(img.size[0]):
t = list(p[x,y])
t[3] = 0
p[x,y] = tuple(t)
img.save("result.png")
于 2012-09-01T15:54:43.883 に答える
3
私はそれを次のようにします:
img = Image.open("myimage.png")
p = img.load()
alpha = img.split()[-1]
width, height = img.size
for y in range(2): #First two rows
for x in range(width): #The whole row
alpha[x, y] = 0
img.putalpha(alpha)
これがうまくいくことを願っています。
于 2012-09-01T15:38:40.563 に答える