怎么使用Python代码在图片里面加文字

在Python中,给图片添加文字可以使用Pillow库(PIL的一个分支),它是一个强大的图像处理库。如果你还没有安装Pillow,可以通过pip安装:

bash 复制代码
pip install Pillow

下面使用一个简单的示例,演示如何使用Pillow库在图片中添加文字:

python 复制代码
from PIL import Image, ImageDraw, ImageFont

def add_text_to_image(image_path, text, position=(10, 10), font_path='simsun.ttc', font_size=30, color=(255, 255, 255)):
    """
    在图片上添加文字
    
    :param image_path: 图片路径
    :param text: 要添加的文本
    :param position: 文本位置,默认为左上角
    :param font_path: 字体文件路径,默认使用arial字体
    :param font_size: 字体大小
    :param color: 文字颜色,默认为白色
    """
    # 打开图片
    image = Image.open(image_path)
    draw = ImageDraw.Draw(image)
    
    # 加载字体,确保font_path指向一个有效的字体文件
    try:
        font = ImageFont.truetype(font_path, font_size)
    except IOError:
        print("字体文件未找到,请检查font_path路径是否正确。")
        return
    
    # 在图片上添加文字
    draw.text(position, text, fill=color, font=font)
    
    # 保存或显示图片
    # image.show() # 显示图片
    output_path = 'image_with_text.png' # 输出图片的路径
    image.save(output_path)
    print(f"带有文字的图片已保存至: {output_path}")

# 使用示例
image_path = 'example.png' # 你的图片路径
add_text_to_image(image_path, "Hello, World!", position=(100, 100), color=(0, 0, 0))

原始图片:

最终效果:

这段代码定义了一个add_text_to_image函数,接受图片路径、要添加的文字、位置、字体、字体大小、颜色等参数。请确保指定的字体文件路径是正确的,并根据需要调整其他参数。如果只需要基本字体,通常可以在系统字体目录下找到(例如Windows的C:\Windows\Fonts),或者你可以下载特定的字体文件并提供其路径。

相关推荐
深蓝电商API5 分钟前
aiohttp中间件实现异步请求日志与重试
爬虫·python
Swift社区7 分钟前
Docker 构建 Python FastAPI 镜像最佳实践
python·docker·fastapi
MarkHD7 分钟前
Python RPA七日实战:用pyautogui打造第一个自动化脚本
python·自动化·rpa
m0_7369191013 分钟前
实战:用Python分析某电商销售数据
jvm·数据库·python
乔江seven29 分钟前
【python轻量级Web框架 Flask 】1 Flask 初识
开发语言·后端·python·flask
Bruk.Liu30 分钟前
(LangChain实战3):LangChain阻塞式invoke与流式stream的调用
人工智能·python·langchain
岱宗夫up37 分钟前
Scrapy框架实战教程(上):从入门到实战,搭建你的第一个专业爬虫
爬虫·python·scrapy
Bruk.Liu38 分钟前
(LangChain实战4):LangChain消息模版PromptTemplate
人工智能·python·langchain
SunnyRivers38 分钟前
Asyncio 提速秘籍:用 run_in_executor 与 to_thread 巧解同步阻塞难题
python·asyncio·to_thread·run_in_executor
亚林瓜子42 分钟前
pyspark分组计数
python·spark·pyspark·分组统计