python PIL -如何将透明图像覆盖在原始图像上

12 浏览
0 Comments

python PIL -如何将透明图像覆盖在原始图像上

如何使用PIL在旧图像上放置一些小的透明图像?

新的透明图像应该像这样位于中间:

enter image description here

箭头圆圈是我想要放在图像上的内容。

如何使用PIL实现这个目标?我在谷歌上搜索了一下,大多数解决方案都是关于绘图而不是在图像上放置图像。

0
0 Comments

原因:用户想要在图片上添加水印,即将透明图片叠加在原始图片上。用户使用了一个之前编写的图片工具来实现这个功能。

解决方法:用户可以使用以下代码将透明图片叠加在原始图片上,并选择叠加的方式和透明度。

from ImageUtilis import ImageUtilis
iu = ImageUtilis()
image_address = "image1.jpg"
mark_address = "watermake.png"  # 透明图片或其他图片
iu.watermark(image_address, mark_address, 'tile', 0.5)
iu.watermark(image_address, mark_address, 'scale', 1.0)
iu.watermark(image_address, mark_address, (100, 100), 0.5) # (100,100)为叠加位置的x,y坐标

关于保存文件的问题,用户可以根据需要在源代码的第130行查看保存文件的位置。用户可以将`self.make_watermark(im, mark, *args, **kwargs).save(image_address)`这一行的`image_address`更改为自己想要保存的位置。

感谢用户的提问,并且用户还请帮忙解答之前的问题:[python resize image without losing sharpness](http://stackoverflow.com/questions/26484411)

0