创新互联Python教程:Python使用Pillow添加图片水印

如果在某个网站上发布了图片,希望在图片上会出现带标识的水印着怎么办呢。

成都创新互联-专业网站定制、快速模板网站建设、高性价比古冶网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式古冶网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖古冶地区。费用合理售后完善,10年实体公司更值得信赖。

这个是个比较常见的需求,在python中应该如何处理这一类需求呢?

需要先安装Pillow: pip install pillow

Demo代码:

import sys
from PIL import Image, ImageDraw, ImageFont
def watermark_with_text(file_obj, text, color, fontfamily=None):
    image = Image.open(file_obj).convert('RGBA')
    draw = ImageDraw.Draw(image)
    width, height = image.size
    margin = 10
    if fontfamily:
        font = ImageFont.truetype(fontfamily, int(height / 20))
    else:
        font = None
    textWidth, textHeight = draw.textsize(text, font)
    x = (width - textWidth - margin) / 2  # 计算横轴位置
    y = height - textHeight - margin  # 计算纵轴位置
    draw.text((x, y), text, color, font)
    return image
if __name__ == '__main__':
    org_file = sys.argv[1]
    with open(org_file, 'rb') as f:
        image_with_watermark = watermark_with_text(f, 'py.com', 'red')
    with open('new_image_water.png', 'wb') as f:
        image_with_watermark.save(f)

使用方法: python watermart.py <图片地址>

这个只是把文本嵌入到图片中的实现,其实也可以嵌入一个图片进去的。具体可以参考pillow官方文档:

https://pillow.readthedocs.io/en/3.1.x/reference/Image.html#PIL.Image.alpha_composite

当前题目:创新互联Python教程:Python使用Pillow添加图片水印
转载注明:http://www.mswzjz.com/qtweb/news12/194762.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联