Python图像上绘制文本

2022-02-06  本文已影响0人  大龙10
参考资料:
1、脚本之家
 https://www.jb51.net/article/204001.htm
2、pillow官方网站 
 https://pillow.readthedocs.io/en/latest/reference/ImageColor.html
 https://pillow.readthedocs.io/en/latest/reference/ImageDraw.html
3、github
https://github.com/pytroll/aggdraw

一、ImageColor模块

  该ImageColor模块包含颜色表和从 CSS3 样式颜色说明符到 RGB 元组的转换器。该模块由 PIL.Image.new()和ImageDraw模块等使用。
  ImageColor 模块支持以下字符串格式:

二、ImageFont模块

  字体模块,PIL.ImageDraw.ImageDraw.text() 中使用。

三、ImageDraw 模块

  该模块为对象ImageDraw提供简单的 2D 图形 。可以使用此模块创建新图像、注释或修饰现有图像,以及动态生成图形以供 Web 使用。
  有关 PIL 更高级的绘图库,请参阅aggdraw 模块。

四、图像上绘制文本

from PIL import Image, ImageDraw, ImageFont

# get an image
with Image.open("bgra.png").convert("RGBA") as base:

    # make a blank image for the text, initialized to transparent text color
    txt = Image.new("RGBA", base.size, (255, 255, 255, 0))

    # get a font
    fnt = ImageFont.truetype("simhei.ttf", 40)
    # get a drawing context
    d = ImageDraw.Draw(txt)

    # draw text, 半透明
    d.text((10, 10), "你好", font=fnt, fill=(255, 255, 0, 128))
    # draw text, full opacity
    d.text((10, 60), "World", font=fnt, fill=(0, 0, 255, 255))

    out = Image.alpha_composite(base, txt)

    out.show()

运行结果:


上一篇下一篇

猜你喜欢

热点阅读