PyQt5 对图片进行缩放的实例

yipeiwu_com6年前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设计】。

相关文章

对Python3之进程池与回调函数的实例详解

进程池 代码演示 方式一 from multiprocessing import Pool def deal_task(n): n -= 1 return n if __...

python3.6中@property装饰器的使用方法示例

本文实例讲述了python3.6中@property装饰器的使用方法。分享给大家供大家参考,具体如下: 1、@property装饰器的使用场景简单记录如下: 负责把一个方法变成属性...

python实现按行分割文件

本文实例为大家分享了python实现按行分割文件的具体代码,供大家参考,具体内容如下 #!/usr/bin/env python #--*-- coding:utf-8 --*--...

Django 配置多站点多域名的实现步骤

起步 要介绍一个非常方便的 Django 扩展包-- django-hosts 。它能够提供在不同的子域名下访问不同的 app。例如,在项目中有多个应用 app01 、 app02 等...

python3.6.3转化为win-exe文件发布的方法

各种坑 用py2exe,不支持,仅支持2.x 用cx_frezee,各种问题 方法 用pyinstaller。 安装时务必用pip3 install pyinstaller。 用pip...