首页 > 解决方案 > 将pygame表面转换为图像?

问题描述

有没有办法将 pygame 表面转换为 png 图像?

rgb_content = pygame.surfarray.array2d(canvas)
cv2.imwrite(file, rgb_content, [cv2.IMWRITE_PNG_COMPRESSION, 0])

我已经尝试过了,但它不起作用,因为它会侧向翻转图像。使其成为灰度,实际上并没有保存它。

标签: pythonpygame

解决方案


使用模块的save功能image

pygame.image.save()
将图像保存到磁盘
save(Surface, filename) -> None

这会将您的 Surface 保存为 BMP、TGA、PNG 或 JPEG 图像。如果文件扩展名无法识别,它将默认为 TGA。TGA 和 BMP 文件格式都创建未压缩文件。

所以只需像这样使用它:

pygame.image.save(your_surface, "your_filename.png")

推荐阅读