作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我尝试用 Pillow 在照片上放一个透明的标志:
# First, I convert my photo and watermark to RGBA:
image = Image.open(photo_image_path).convert('RGBA')
watermark = Image.open(watermark_image_path).convert('RGBA')
# then I сreate an empty layer with the same size as image
# and put watermark in x/y position
layer = Image.new('RGBA', image.size, (0, 0, 0, 0))
layer.paste(watermark, (x, y))
# then add transparency
layer.putalpha(128)
# and merge image with logo
result = Image.alpha_composite(image, layer)
最初我的水印有一个全透明的背景。但是我在所有图像尺寸上都有黑色半透明背景的结果。我做错了什么?
最佳答案
我已经解决了这个问题:
image = Image.open(photo_image_path).convert('RGBA')
watermark = Image.open(watermark_image_path).convert('RGBA')
layer = Image.new('RGBA', image.size, (0, 0, 0, 0))
layer.paste(watermark, (x, y))
# Create a copy of the layer
layer2 = layer.copy()
# Put alpha on the copy
layer2.putalpha(128)
# merge layers with mask
layer.paste(layer2, layer)
result = Image.alpha_composite(image, layer)
关于python - 如何在枕头中使用 alpha_composite?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64321963/
我尝试用 Pillow 在照片上放一个透明的标志: # First, I convert my photo and watermark to RGBA: image = Image.open(phot
我是一名优秀的程序员,十分优秀!