相关疑难解决方法(0)

使用PIL使所有白色像素透明?

我正在尝试使用Python Image Library使所有白色像素透明.(我是一个C黑客试图学习python所以要温柔)我已经有转换工作(至少像素值看起来正确)但我无法弄清楚如何将列表转换为缓冲区来重新创建图片.这是代码

img = Image.open('img.png')
imga = img.convert("RGBA")
datas = imga.getdata()

newData = list()
for item in datas:
    if item[0] == 255 and item[1] == 255 and item[2] == 255:
        newData.append([255, 255, 255, 0])
    else:
        newData.append(item)

imgb = Image.frombuffer("RGBA", imga.size, newData, "raw", "RGBA", 0, 1)
imgb.save("img2.png", "PNG")
Run Code Online (Sandbox Code Playgroud)

python image python-imaging-library

54
推荐指数
6
解决办法
7万
查看次数

Python:PIL替换单个RGBA颜色

我已经看过这个问题了:问题似乎已经实现了一种非常类似的技术来替换包括alpha值在内的单一颜色:

c = Image.open(f)
c = c.convert("RGBA")
w, h = c.size
cnt = 0
for px in c.getdata():
    c.putpixel((int(cnt % w), int(cnt / w)), (255, 0, 0, px[3]))
    cnt += 1                                                                                                   
Run Code Online (Sandbox Code Playgroud)

但是,这很慢.我在互联网上发现了这个配方,但到目前为止还没有成功使用它:配方

我想要做的是拍摄由单一颜色,白色组成的各种PNG图像.每个像素都是100%白色,具有各种alpha值,包括alpha = 0.我想要做的是基本上使用新的设置颜色着色图像,例如#ff0000 <00-ff>.所以我的开始和结果图像看起来像这样,左边是我的起始图像,右边是我的结束图像(注意:背景已经变为浅灰色,所以你可以看到它,因为它实际上是透明的,你不会'能够看到左边的点.)

替代文字

有更好的方法吗?

python colors python-imaging-library

19
推荐指数
3
解决办法
3万
查看次数

更换PIL中的单色?

我有一个Image,我想将一种颜色的所有像素替换为不同颜色的像素,最简单的方法是什么?

或多或少我在tkinter中有一个图像,当按下按钮时我希望颜色改变.

python tkinter python-imaging-library

5
推荐指数
1
解决办法
2590
查看次数

标签 统计

python ×3

python-imaging-library ×3

colors ×1

image ×1

tkinter ×1