Python怎么实现图片添加水印

Python可以使用Pillow库来实现图片添加水印的功能。下面是一个示例代码:from PIL import Image, ImageDraw, ImageFontdef add_watermark(image_path, watermark_text, output_path):# 打开图片image = Image.open(image_path)# 创建绘图对象draw = ImageD

Python可以使用Pillow库来实现图片添加水印的功能。下面是一个示例代码:

from PIL import Image, ImageDraw, ImageFont

def add_watermark(image_path, watermark_text, output_path):
    # 打开图片
    image = Image.open(image_path)

    # 创建绘图对象
    draw = ImageDraw.Draw(image)

    # 设置水印文本的字体和大小
    font = ImageFont.truetype('arial.ttf', 36)

    # 计算水印文本的位置
    text_width, text_height = draw.textsize(watermark_text, font)
    x = image.width - text_width - 10
    y = image.height - text_height - 10

    # 添加水印文本
    draw.text((x, y), watermark_text, font=font, fill=(255, 255, 255, 128))

    # 保存图片
    image.save(output_path)

# 示例用法
add_watermark('input.jpg', 'Watermark', 'output.jpg')

在上述代码中,首先使用Image.open()方法打开待添加水印的图片,然后创建一个绘图对象draw,接着使用ImageDraw库的textsize()方法计算水印文本的尺寸,并根据图片尺寸和水印文本尺寸计算出水印文本的位置。最后使用draw.text()方法添加水印文本,并使用image.save()保存添加水印后的图片。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请发送邮件至 55@qq.com 举报,一经查实,本站将立刻删除。转转请注明出处:https://www.szhjjp.com/n/849827.html

(0)
派派
上一篇 2024-02-02
下一篇 2024-02-02

相关推荐

  • 如何处理公关危机(如何处理公关危机公关)

    如何处理公关危机,如何处理公关危机公关内容导航:怎么处理公关危机如何进行公共关系危机处理什么叫危机公关以及危机公关的处理方法公关危机怎么解决一、怎么处理公关危机危机处理的三个步骤是:判断、反应、善后。危机处理的三大要点是:可谅、可靠、可控。先迅速对危机做一个判断:1、那些人或群体的利益受到了影响(所谓利益相关者分析)2、受影响者会如何看待危机和自己的损失(感知比事实更重要)3、这些群体对你

    2022-05-15
    0
  • java怎么获取session对象

    在Java中,可以通过以下步骤获取Session对象:在Servlet中,可以使用HttpServletRequest对象的getSession()方法来获取Session对象。示例代码如下:HttpSession session = request.getSession();在JSP页面中,可以使用内置对象session来获取Session对象。示例代码如下:<%HttpSession ses

    2024-01-23
    0
  • 4070ti魔龙价格

    很多用户都对于3070Ti这款显卡非常在乎,其中微星显卡发布的4070ti魔龙就有一些用户非常喜欢,想要知道它的具体发售价格,这里就给大家带来一些有关这个显卡型号的价格参考。4070ti魔龙价格答:京东自营店的价格为6999元。 这个价格仅供参考,截至目前还是这个价格,当然后续也会因为一些活动和其他的原因会有价格的波动。 具体的还是要以自营店的价格为准,不同的店铺也会有细微的不同。 不过购买这种产

    2024-02-19
    0
  • c语言中怎么定义一个函数

    在C语言中,定义一个函数需要包含以下几个部分:返回类型:指定函数返回值的数据类型,如int、void等。函数名:函数的标识符,用于调用该函数。参数列表:函数接受的参数列表,可以为空或包含一个或多个参数。函数体:函数的具体实现代码。一个简单的函数定义形式如下:返回类型 函数名(参数列表) {// 函数体}例如,下面是一个计算两个整数之和的函数定义:int add(int a, int b

    2024-03-02
    0
  • ASP中怎么处理大型文本文件的读写

    在ASP中处理大型文本文件的读写可以通过以下几种方式实现:使用FileSystemObject对象:ASP中可以使用FileSystemObject对象来读写大型文本文件。通过FileSystemObject对象的OpenTextFile方法可以打开文本文件并逐行读取或写入文件内容。Set objFSO = CreateObject(“Scripting.FileSystemObject”)Se

    2024-04-03
    0
  • php两个数组怎么合并成一个

    可以使用array_merge函数将两个数组合并成一个数组。示例代码如下:$array1 = [1, 2, 3];$array2 = [4, 5, 6];$result = array_merge($array1, $array2);print_r($result);输出结果为:Array([0] => 1[1] => 2[2] => 3[3] => 4[4] => 5[5] => 6

    2024-01-22
    0

发表回复

登录后才能评论