PyQt5 对图片进行缩放的实例

yipeiwu_com7年前Python基础

如下所示:

def shrinkImage(self):
	'''
	缩小图片
	:return:
	'''
	scale = 0.8		#每次缩小20%
	img = QImage(self.path)  #创建图片实例
	mgnWidth = int(originWidth * scale)  
	mgnHeight = int(originHeight * scale)  #缩放宽高尺寸
	size = QSize(mgnWidth, mgnHeight)
 
	pixImg = QPixmap.fromImage(img.scaled(size, Qt.IgnoreAspectRatio))    #修改图片实例大小并从QImage实例中生成QPixmap实例以备放入QLabel控件中
	
    self.imageLabel.resize(mgnWidth, mgnHeight)
	self.imageLabel.setPixmap(pixImg)

基本思路是,先生成一个QImage实例,然后再缩放此实例最后将其导入QPixmap中,原先直接使用QPixmap中的scaled函数不能实现缩放功能,暂时不清楚原因,如果你看到本文章并知道原因的话,还望不吝赐教,多谢!

以上这篇PyQt5 对图片进行缩放的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python 中random模块的常用方法总结

python 中random的常用方法总结 一、random常用模块 1.random.random() 随机生成一个小数 print(random.random()) # 输出...

基于Python2、Python3中reload()的不同用法介绍

reload() 简介 作用:用于重新载入之前载入的模块 语法格式:reload(module) 参数:module为模块对象,必须已经被加载 返回值:返回模块对象 注意事项: 多次重复...

python读取图片的方式,以及将图片以三维数组的形式输出方法

python读取图片的方式,以及将图片以三维数组的形式输出方法

近期做个小项目需要用到python读取图片,自己整理了一下两种读取图片的方式,其中一种用到了TensorFlow,(TensorFlow是基于python3 的)。代码及运行结果如下所示...

Python设计模式之职责链模式原理与用法实例分析

Python设计模式之职责链模式原理与用法实例分析

本文实例讲述了Python设计模式之职责链模式原理与用法。分享给大家供大家参考,具体如下: 职责链模式(Chain Of Responsibility):使多个对象都有机会处理请求,从而...

Python模块学习 re 正则表达式

re.match   re.match 尝试从字符串的开始匹配一个模式,如:下面的例子匹配第一个单词。 复制代码 代码如下: import re text = "JGood is a h...