• pygame--图像变换


      

    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)  #查找边--轮廓

    效果图:

  • 相关阅读:
    Web自动化测试之滑动验证码的解决方案
    设计模式之单例
    设计模式之原型
    设计模式之建造者
    DG环境RMAN删除归档报错RMAN-08137: archived log not deleted【转载】
    RFS[3]: No standby redo logfiles available for thread 1
    spring-boot之webflux简单入门
    spring-boot-security组件总结补充
    spring-boot启用security组件 · 下
    spring-boot启用security组件 · 中
  • 原文地址:https://www.cnblogs.com/liming19680104/p/13223908.html
Copyright © 2020-2023  润新知