Pygame Transform图像变形的实现示例
更新时间:2021年11月17日 15:13:08 作者:天子骄龙
pygame.transform 模块允许您对加载、创建后的图像进行一系列操作,比如调整图像大小、旋转图片等操作,感兴趣的可以了解一下
pygame.transform 模块允许您对加载、创建后的图像进行一系列操作,比如调整图像大小、旋转图片等操作,常用方法如下所示:
下面看一组简单的演示示例:
import pygame #引入pygame中所有常量,比如 QUIT from pygame.locals import * pygame.init() screen = pygame.display.set_mode((500,250)) pygame.display.set_caption('c语言中文网') #加载一张图片(455*191) image_surface = pygame.image.load("C:/Users/Administrator/Desktop/c-net.png").convert() image_new = pygame.transform.scale(image_surface,(300,300)) # 查看新生成的图片的对象类型 #print(type(image_new)) # 对新生成的图像进行旋转至45度 image_1 =pygame.transform.rotate(image_new,45) # 使用rotozoom() 旋转 0 度,将图像缩小0.5倍 image_2 = pygame.transform.rotozoom(image_1,0,0.5) while True: for event in pygame.event.get(): if event.type == QUIT: exit() # 将最后生成的image_2添加到显示屏幕上 screen.blit(image_2,(0,0)) pygame.display.update()
实现示例
import pygame pygame.init() screen = pygame.display.set_mode((960, 600)) pygame.display.set_caption("图像变换") img = pygame.image.load('马.jpg') clock = pygame.time.Clock() img1=pygame.transform.flip(img,False, True) #图像进行水平和垂直翻转 #参数1:要翻转的图像 #参数2:水平是否翻转 #参数3:垂直是否翻转 #返回一个新图像 while True: t = clock.tick(60) for event in pygame.event.get(): if event.type == pygame.QUIT: exit() screen.blit(img1,(100,50)) pygame.display.update()
img1 = pygame.transform.scale(img, (200, 100)) #缩放 #参数2:新图像的宽高
img1 = pygame.transform.smoothscale(img,(400,300)) #平滑缩放图像 #此函数仅适用于24位或32位surface。 如果输入表面位深度小于24,则抛出异常
img1 = pygame.transform.scale2x(img) #快速的两倍大小的放大
img = pygame.image.load('马.jpg') img1 = pygame.transform.rotate(img, 30) #旋转图像 #参数2:要旋转的角度--正数表示逆时针--负数表示顺时针 #除非以90度的增量旋转,否则图像将被填充得更大的尺寸。 如果图像具有像素alpha,则填充区域将是透明的 #旋转是围绕中心
img1 = pygame.transform.rotozoom(img, 30.0, 2.0) #缩放+旋转 #第一个参数指定要处理的图像,第二个参数指定旋转的角度数,第三个参数指定缩放的比例 #这个函数会对图像进行滤波处理,图像效果会更好,但是速度会慢很多
img1 = pygame.transform.chop(img, (0, 0, 100, 50)) #对图像进行裁减 #第一个参数指定要裁减的图像,第二个参数指定要保留的图像的区域
img = pygame.image.load('马.jpg') img1 = pygame.transform.laplacian(img) #查找边--轮廓
以上就是Pygame Transform图像变形的实现示例的详细内容,更多关于Pygame Transform图像变形的资料请关注脚本之家其它相关文章!
您可能感兴趣的文章:
相关文章
pandas中DataFrame新增行及global变量的使用方式
这篇文章主要介绍了pandas中DataFrame新增行及global变量的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教2024-02-02一个基于flask的web应用诞生 flask和mysql相连(4)
一个基于flask的web应用诞生第四篇,这篇文章主要介绍了如何让flask和mysql进行互联,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2017-04-04提升Python项目整洁度使用import linter实例探究
在复杂的Python项目中,良好的代码组织结构是维护性和可读性的关键,本文将深入研究 import-linter 工具,它是一个强大的静态分析工具,旨在优化项目的模块导入,提高代码质量和可维护性2024-01-01
最新评论