Lv.1
个人网站:https://space.bilibili.com/567157373
签名:师傅:Godeyes 徒弟:ZCH_肯德稽 修作品,改BUG,帮助别人 社区里每个喵们都可以是我的老湿吖~ 最好的盆友+同学是ZCH_蓝冰世界 小号 ZCH_Programme 向着python的arcade Java的基本语法冲! 没时间活跃了 B站:https://space.bilibili.com/567157373 Goku开发中
在 谁来看看我的新作品 中回复
来到python不到一个月后的第一个作品: https://shequ.cod喵/community/255965
新作品: https://shequ.cod喵/community/255780
看看我的新作品吧

2020-03-07T10:42:53 点赞:0
在 【Python作品分享】猜数字【作品秀】 中回复
#第一个程序。主程序
import sys
from PySide2.QtWidgets import*
from PySide2.QtGui import*
from ui_process_img import Ui_MainWindow
from PIL import Image,ImageFilter,ImageQt
class ProcessImg(QMainWindow, Ui_MainWindow):
def __init__(self):
super().__init__()
self.setupUi(self)
self.file = None
self.filters = {
"模糊滤镜": ImageFilter.BLUR,
"轮廓滤镜":ImageFilter.CONTOUR,
"边缘增强滤镜": ImageFilter.EDGE_ENHANCE,
"浮雕滤镜":ImageFilter.EMBOSS,
"锐化滤镜":ImageFilter.SHARPEN,
"平滑滤镜":ImageFilter.SMOOTH,
}
self.pbtn_file.clicked.connect(self.select_file)
self.pbtn_process.clicked.connect(self.process_img)
self.lb_input_img.setScaledContents(True)
self.lb_output_img.setScaledContents(True)
self.show()
def select_file(self):
file_path = QFileDialog.getOpenFileName(caption="选择文件",filter="(* .jpg * .png)")
if file_path[0]:
self.file = file_path[0]
img_pix = QPixmap(self.file)
self.lb_input_img.setPixmap(img_pix)
else:
QMessageBox.warning(self, "注意", "请先选择图片文件呀~TAT~")
def process_img(self):
if self.file:
img = Image.open(self.file)
text = self.cb_filter_list.currentText()
img_temp = img.filter(self.filters[text]).convert("RGBA")
img_qt = ImageQt.ImageQt(img_temp)
img_pix = QPixmap.fromImage(img_qt)
self.lb_output_img.setPixmap(img_pix)
else:
QMessageBox.warning(self,"注意","请先选择图片文件呀~TAT~")
if __name__=="__main__":
app = QApplication(sys.argv)
window = ProcessImg()
sys.exit(app.exec_())
# -*- coding: utf-8 -*-
# Form implementation generated from reading ui file 'C:/Users/Apple/Desktop/filter/process_img.ui',
# licensing of 'C:/Users/Apple/Desktop/filter/process_img.ui' applies.
#
# Created: Mon Feb 17 20:26:32 2020
# by: pyside2-uic running on PySide2 5.12.3
#
# WARNING! All changes made in this file will be lost!
#第二个程序,副程序
from PySide2 import QtCore, QtGui, QtWidgets
class Ui_MainWindow(object):
def setupUi(self, MainWindow):
MainWindow.setObjectName("MainWindow")
MainWindow.resize(655, 417)
self.centralwidget = QtWidgets.QWidget(MainWindow)
self.centralwidget.setObjectName("centralwidget")
self.verticalLayout = QtWidgets.QVBoxLayout(self.centralwidget)
self.verticalLayout.setObjectName("verticalLayout")
self.horizontalLayout = QtWidgets.QHBoxLayout()
self.horizontalLayout.setContentsMargins(-1, -1, -1, 0)
self.horizontalLayout.setObjectName("horizontalLayout")
self.pbtn_file = QtWidgets.QPushButton(self.centralwidget)
self.pbtn_file.setMinimumSize(QtCore.QSize(0, 0))
self.pbtn_file.setMaximumSize(QtCore.QSize(16777215, 50))
font = QtGui.QFont()
font.setPointSize(20)
self.pbtn_file.setFont(font)
self.pbtn_file.setObjectName("pbtn_file")
self.horizontalLayout.a喵Widget(self.pbtn_file)
self.cb_filter_list = QtWidgets.QComboBox(self.centralwidget)
self.cb_filter_list.setMinimumSize(QtCore.QSize(250, 0))
self.cb_filter_list.setMaximumSize(QtCore.QSize(16777215, 50))
font = QtGui.QFont()
font.setPointSize(20)
self.cb_filter_list.setFont(font)
self.cb_filter_list.setObjectName("cb_filter_list")
self.cb_filter_list.a喵Item("")
self.cb_filter_list.a喵Item("")
self.cb_filter_list.a喵Item("")
self.cb_filter_list.a喵Item("")
self.cb_filter_list.a喵Item("")
self.cb_filter_list.a喵Item("")
self.horizontalLayout.a喵Widget(self.cb_filter_list)
self.pbtn_process = QtWidgets.QPushButton(self.centralwidget)
self.pbtn_process.setMaximumSize(QtCore.QSize(16777215, 50))
font = QtGui.QFont()
font.setPointSize(20)
self.pbtn_process.setFont(font)
self.pbtn_process.setObjectName("pbtn_process")
self.horizontalLayout.a喵Widget(self.pbtn_process)
self.verticalLayout.a喵Layout(self.horizontalLayout)
self.horizontalLayout_2 = QtWidgets.QHBoxLayout()
self.horizontalLayout_2.setObjectName("horizontalLayout_2")
self.lb_input_img = QtWidgets.QLabel(self.centralwidget)
font = QtGui.QFont()
font.setPointSize(30)
self.lb_input_img.setFont(font)
self.lb_input_img.setAlignment(QtCore.Qt.AlignCenter)
self.lb_input_img.setObjectName("lb_input_img")
self.horizontalLayout_2.a喵Widget(self.lb_input_img)
self.lb_output_img = QtWidgets.QLabel(self.centralwidget)
font = QtGui.QFont()
font.setPointSize(30)
self.lb_output_img.setFont(font)
self.lb_output_img.setAlignment(QtCore.Qt.AlignCenter)
self.lb_output_img.setObjectName("lb_output_img")
self.horizontalLayout_2.addWidget(self.lb_output_img)
self.verticalLayout.addLayout(self.horizontalLayout_2)
self.pushButton = QtWidgets.QPushButton(self.centralwidget)
self.pushButton.setObjectName("pushButton")
self.verticalLayout.addWidget(self.pushButton)
MainWindow.setCentralWidget(self.centralwidget)
self.statusbar = QtWidgets.QStatusBar(MainWindow)
self.statusbar.setObjectName("statusbar")
MainWindow.setStatusBar(self.statusbar)
self.retranslateUi(MainWindow)
QtCore.QMetaObject.connectSlotsByName(MainWindow)
def retranslateUi(self, MainWindow):
MainWindow.setWindowTitle(QtWidgets.QApplication.translate("MainWindow", "滤镜处理", None, -1))
self.pbtn_file.setText(QtWidgets.QApplication.translate("MainWindow", "选择图片文件", None, -1))
self.cb_filter_list.setItemText(0, QtWidgets.QApplication.translate("MainWindow", "模糊滤镜", None, -1))
self.cb_filter_list.setItemText(1, QtWidgets.QApplication.translate("MainWindow", "轮廓滤镜", None, -1))
self.cb_filter_list.setItemText(2, QtWidgets.QApplication.translate("MainWindow", "边缘增强滤镜", None, -1))
self.cb_filter_list.setItemText(3, QtWidgets.QApplication.translate("MainWindow", "浮雕滤镜", None, -1))
self.cb_filter_list.setItemText(4, QtWidgets.QApplication.translate("MainWindow", "锐化滤镜", None, -1))
self.cb_filter_list.setItemText(5, QtWidgets.QApplication.translate("MainWindow", "平滑滤镜", None, -1))
self.pbtn_process.setText(QtWidgets.QApplication.translate("MainWindow", "开始处理", None, -1))
self.lb_input_img.setText(QtWidgets.QApplication.translate("MainWindow", "处理前", None, -1))
self.lb_output_img.setText(QtWidgets.QApplication.translate("MainWindow", "处理后", None, -1))
self.pushButton.setText(QtWidgets.QApplication.translate("MainWindow", "保存处理结果", None, -1))
2020-03-09T09:02:10 点赞:1