pygame之image模块

                          image-用于图像传输的Pygame模块

pygame.image.load—从文件加载新图像

pygame.image.save—将图像保存到磁盘

pygame.image.get_extended—测试是否可以加载扩展图像格式

pygame.image.tostring—将图像传输到字符串缓冲区

pygame.image.fromstring—从字符串缓冲区创建新的Surface

pygame.image.frombuffer—创建一个在字符串缓冲区内共享数据的新Surface

图像模块包含用于加载和保存图片的功能,以及将Surface转换为其他包可用的格式。请注意,没有Image类; 图像作为Surface对象加载。Surface类允许操作(绘制线条,设置像素,捕获区域等)。图像模块是pygame的必需依赖项,但它只能选择性地支持任何扩展文件格式。默认情况下,它只能加载未压缩的 BMP图像。使用完整图像支持构建时,该pygame.image.load() 功能可以支持以下格式:JPG、PNG、GIF (非动画)、BMP、PCX、TGA (未压缩)、TIF、LBM(和PBM)、PBM(和PGM,PPM)和XPM。保存图像仅支持一组有限的格式。您可以保存为以下格式:BMP、TGA、PNG、JPEG。

pygame.image.load() 从文件加载新图像

load(filename) - > Surface

load(fileobj,namehint =“”) - > Surface

从文件源加载图像。您可以传递文件名或类似Python文件的对象。Pygame将自动确定图像类型(例如,GIF或位图),并从数据中创建一个新的Surface对象。在某些情况下,它需要知道文件扩展名(例如,GIF图像应以“.gif”结尾)。如果传递原始文件类对象,则可能还希望将原始文件名作为namehint参数传递。返回的Surface将包含与其来源相同的颜色格式,colorkey和alpha透明度。您通常希望 Surface.convert()不带参数调用,以创建一个可以在屏幕上更快地绘制的副本。对于Alpha透明度,例如.png图像,请convert_alpha() 在加载后使用该方法,以使图像具有每像素透明度。可能并不总是构建Pygame来支持所有图像格式。至少它将支持未压缩BMP。如果pygame.image.get_extended() 返回“True”,您应该能够加载大多数图像(包括PNG,JPG和GIF)。您应该使用os.path.join()兼容性,eg. asurf = pygame.image.load(os.path.join('data', 'bla.png'))。

pygame.image.save() 将图像保存到磁盘

save(Surface,filename) - >无

这将你的面保存无论是作为BMP,TGA,PNG,或 JPEG图像。如果文件扩展名无法识别,则默认为 TGA。两者TGA和BMP文件格式都会创建未压缩的文件。

pygame.image.get_extended() 测试是否可以加载扩展图像格式

get_extended() - > bool

如果pygame是使用扩展图像格式构建的,则此函数将返回True。仍然无法确定哪些格式可用,但通常您可以将它们全部加载。

 

pygame.image.tostring() 将图像传输到字符串缓冲区

tostring(Surface,format,flipped = False) - > string

创建一个可以使用其他Python映像包中的“fromstring”方法传输的字符串。一些Python图像包更喜欢它们的图像,从底部到顶部格式(例如PyOpenGL)。如果为翻转的参数传递True,则字符串缓冲区将垂直翻转。format参数是以下值之一的字符串。请注意,只有8位Surface可以使用“P”格式。其他格式适用于任何Surface。另请注意,其他Python映像包支持的格式比pygame更多。

P,8位调色表面

RGB,24位图像

RGBX,32位图像,未使用空间

RGBA,带有alpha通道的32位图像

ARGB,首先是alpha通道的32位图像

RGBA_PREMULT,32位图像,颜色由alpha通道缩放

ARGB_PREMULT,32位图像,颜色由alpha通道缩放,alpha通道优先

pygame.image.fromstring() 从字符串缓冲区创建新的Surface

fromstring(string,size,format,flipped = False) - > Surface

此函数采用类似的参数pygame.image.tostring()。size参数是一对表示宽度和高度的数字。创建新Surface后,您可以销毁字符串缓冲区。大小和格式图像必须计算与传递的字符串缓冲区完全相同的大小。否则将引发异常。请参阅该pygame.image.frombuffer()方法,以便将图像传输到pygame中。

pygame.image.frombuffer() 创建一个在字符串缓冲区内共享数据的新Surface

frombuffer(string,size,format) - > Surface

创建一个直接从字符串缓冲区共享像素数据的新Surface。此方法采用相同的参数pygame.image.fromstring(),但无法垂直翻转源数据。这比pygame.image.fromstring()从字符串缓冲区创建新Surface要快得多,因为不必分配和复制像素数据。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Louistinda

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值