欢迎访问宙启技术站
智能推送

PyQt5.QtGui.QImage实现图像的文本添加与水印处理

发布时间:2024-01-13 06:30:15

PyQt5.QtGui.QImage是Qt中的一个图像处理类,可以用于创建、编辑和操作图像。下面是一个使用PyQt5.QtGui.QImage实现图像的文本添加与水印处理的例子。

首先,我们需要先安装PyQt5库,可以使用以下命令进行安装:

pip install pyqt5

然后,我们可以使用以下代码来实现图像的文本添加与水印处理:

from PyQt5.QtGui import QImage, QPainter, QFont, QColor

# 加载图像
image = QImage("image.jpg")

# 在图像上添加文本
painter = QPainter(image)
painter.setPen(QColor(255, 255, 255))  # 设置文本颜色为白色
painter.setFont(QFont("Arial", 20))  # 设置字体和大小
painter.drawText(10, 10, "Hello World")  # 在坐标(10, 10)处添加文本
painter.end()

# 添加水印
painter = QPainter(image)
painter.setPen(QColor(0, 0, 0, 100))  # 设置文本颜色为黑色,透明度为100
painter.setFont(QFont("Arial", 30))  # 设置字体和大小
painter.rotate(45)  # 旋转水印
painter.drawText(100, 100, "Watermark")  # 在坐标(100, 100)处添加水印
painter.end()

# 保存图像
image.save("image_with_text_and_watermark.jpg")

上述代码首先通过QImage类加载一张图像。然后,通过QPainter类在图像上添加文本,可以通过setPen方法设置文本颜色,setFont方法设置字体和大小,drawText方法在指定坐标处添加文本。

接下来,通过再次使用QPainter类在图像上添加水印,可以通过setPen方法设置文本颜色和透明度,setFont方法设置字体和大小,rotate方法旋转水印,drawText方法在指定坐标处添加水印。

最后,使用save方法保存处理后的图像。

需要注意的是,以上代码中的"image.jpg"为示例图像的文件名,需要替换为要处理的真实图像的文件名。

希望以上例子对你有所帮助!