Python小程序之在图片上加入数字的代码

2023-12-17Python编程
15

下面是关于“Python小程序之在图片上加入数字的代码”的完整攻略:

1. 准备工作

首先要确保你已经安装了Python的相关依赖库,比如Pillow、opencv-python等。安装方法可以通过pip命令进行操作,如下所示:

pip install Pillow
pip install opencv-python

2. 读取图片

接下来,我们需要读取一张图片,并将其转化为Pillow中的Image对象。这个步骤的代码如下:

from PIL import Image
img = Image.open('input.jpg')

注意,这里的input.jpg是指你要处理的图片路径,可以根据实际情况进行修改。

3. 加入数字

接下来的工作是在图片上加入数字。我们可以使用Pillow提供的ImageDraw模块进行操作。可以创建一个ImageDraw对象,调用它的text方法即可在图片上加入数字。代码如下所示:

from PIL import Image, ImageDraw, ImageFont

# 读取图片
img = Image.open('input.jpg')

# 创建Draw对象
draw = ImageDraw.Draw(img)

# 加载字体
font = ImageFont.truetype('arial.ttf', 50)

# 在图片上加入数字
draw.text((50, 50), '123', fill=(255, 0, 0), font=font)

# 保存图片
img.save('output.jpg')

这段代码中,我们首先创建了一个Draw对象,然后加载了一个arial字体,最后在图片上加入了数字。注意,这里的50, 50表示数字在图片上的位置坐标,fill表示数字的颜色,font是数字的字体。

4. 示例说明

下面给出两个示例说明如何在图片上加入数字。

示例1:在照片上加入日期

以下代码演示了如何在一张照片上加入当天的日期:

from PIL import Image, ImageDraw, ImageFont
import datetime

# 读取图片
img = Image.open('input.jpg')

# 创建Draw对象
draw = ImageDraw.Draw(img)

# 加载字体
font = ImageFont.truetype('arial.ttf', 50)

# 获取当前日期
today = datetime.datetime.now().strftime('%Y-%m-%d')

# 在图片上加入日期
draw.text((50, 50), today, fill=(255, 0, 0), font=font)

# 保存图片
img.save('output.jpg')

在这个示例中,我们使用了Python自带的datetime模块获取了当前的日期,然后在图片上加入了日期。

示例2:在地图上加入城市名称

以下代码演示了如何在一张地图上加入城市名称:

from PIL import Image, ImageDraw, ImageFont

# 读取图片
img = Image.open('world_map.jpg')

# 创建Draw对象
draw = ImageDraw.Draw(img)

# 加载字体
font = ImageFont.truetype('arial.ttf', 20)

# 在图片上加入城市名称
draw.text((400, 170), 'London', fill=(255, 0, 0), font=font)
draw.text((600, 300), 'Beijing', fill=(255, 0, 0), font=font)

# 保存图片
img.save('output.jpg')

在这个示例中,我们加载了一张世界地图,然后在地图上加入了两个城市的名称。需要注意的是,这里的坐标需要自己根据实际情况进行调整。

The End

相关推荐

解析Python中的eval()、exec()及其相关函数
Python中有三个内置函数eval()、exec()和compile()来执行动态代码。这些函数能够从字符串参数中读取Python代码并在运行时执行该代码。但是,使用这些函数时必须小心,因为它们的不当使用可能会导致安全漏洞。...
2023-12-18 Python编程
117

Python下载网络文本数据到本地内存的四种实现方法示例
在Python中,下载网络文本数据到本地内存是常见的操作之一。本文将介绍四种常见的下载网络文本数据到本地内存的实现方法,并提供示例说明。...
2023-12-18 Python编程
101

Python 二进制字节流数据的读取操作(bytes与bitstring)
来给你详细讲解下Python 二进制字节流数据的读取操作(bytes与bitstring)。...
2023-12-18 Python编程
120

Python3.0与2.X版本的区别实例分析
Python 3.x 是 Python 2.x 的下一个重大版本,其中有一些值得注意的区别。 Python 3.0中包含了许多不兼容的变化,这意味着在迁移到3.0之前,必须进行代码更改和测试。本文将介绍主要的差异,并给出一些实例来说明不同点。...
2023-12-18 Python编程
34

python如何在终端里面显示一张图片
要在终端里显示图片,需要使用一些Python库。其中一种流行的库是Pillow,它有一个子库PIL.Image可以加载和处理图像文件。要在终端中显示图像,可以使用如下的步骤:...
2023-12-18 Python编程
91

Python图像处理实现两幅图像合成一幅图像的方法【测试可用】
在Python中,我们可以使用Pillow库来进行图像处理。具体实现两幅图像合成一幅图像的方法如下:...
2023-12-18 Python编程
103