项目1通过GUI界面向指定图片中添加指定字符串
Posted i-orange
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了项目1通过GUI界面向指定图片中添加指定字符串相关的知识,希望对你有一定的参考价值。
# 代码长度:61行(最后一行)
#项目所用模块:tkinter(GUI模块)、PIL(图像处理模块)、matplotlib(绘图模块,功能与Matlab中的plot类似)
#项目界面:
#代码实现
1.导入所需模块/方法
#! python3
#-*-coding:utf-8-*-
from tkinter import * from PIL import Image, ImageFont, ImageDraw import matplotlib as plot
2.创建GUI界面 从Frame类中派生出Picture(类的名称,自定义)类,在这个类(父容器)下将包含所有的Button、Label和输入框等Widget
class Picture(Frame):
def __init__(self, master=None):
Frame.__init__(self, master)
self.pack() #封装父容器
self.creatWidgets() #自定义Widgets
‘next...‘
def creatWidgets(self):
self.funcLabel = Label(self, text=‘**向图片中添加字符串的小程序‘) #文本Widget
self.funcLabel.pack()
self.picLabel = Label(self, text=‘请输入图片路径‘) #文本Widget
self.picLabel.pack()
self.picPath = Entry(self) #输入框Widget
self.picPath.pack()
self.strLabel = Label(self, text=‘请输入字符串‘) #文本Widget
self.strLabel.pack()
self.strContent = Entry(self) #输入框
self.strContent.pack()
self.printButton = Button(self, text=‘预览‘, command=self.picOpen) #按钮Widget
self.printButton.back()
self.saveButton = Button(self, text=‘保存‘, command=self.savePic) #按钮Widget
self.saveButton.pack()
self.quitButton = Button(self, text=‘退出‘, command=self.quit) #按钮Widget
self.quitButton.pack()
3.图像处理 包括打开图像、print文字、图像预览以及图像保存
def picOpen(self):
image = Image.open(self.picPath.get()) #打开图片
w, h = image.size
font = ImageFont.truetype(‘arial.ttf‘, 36) #设置文本字体和字号
draw = ImageDraw.Draw(image) #将文本‘打印’到图片
draw.text((w-20,0), self.strContent.get(), font=font, fill=(255,0,0))
#image.show() #调用系统看图软件,速度慢
plot.figure(‘picAddStr‘) #调用matplotlib库
plot.imshow(image)
plot.show()
self.image = image
def savePic(self): #保存图片
self.image.save(‘1.png‘)
4. 调用
pic = Picture()
pic.master.title(‘picAddStr‘)
pic.mainloop()
以上是关于项目1通过GUI界面向指定图片中添加指定字符串的主要内容,如果未能解决你的问题,请参考以下文章
在线等,如何在wpf中用后台代码新建一个图片,然后指定图片的位置并在界面显示?