当你创建一个新的 Pygame 表面时:
pygame.Surface((width, height), flags=0, depth=0, masks=None)
您是否必须调用.convert()
它来更改其像素格式,或者在您创建它时已经为您完成了?
当你创建一个新的 Pygame 表面时:
pygame.Surface((width, height), flags=0, depth=0, masks=None)
您是否必须调用.convert()
它来更改其像素格式,或者在您创建它时已经为您完成了?
convert
仅在更改像素格式时使用(例如,从索引到 rgb)。默认情况下,将使用 RGB 创建表面,如果这不是您需要的(几乎总是如此),您只需要转换它。
当你创建一个新的表面时,它的格式总是匹配(尽可能地)当前显示表面的格式(不管你pygame.display.set_mode()
上次调用时设置的)。您不需要convert
新的表面,除非它们的格式要求与显示表面不同(alpha,用于一种或索引颜色,如名称所述)。
请注意,如果新表面确实具有每像素 alpha 深度(有或没有其他格式细节),您将需要使用它convert_alpha()
。
来自文档: http: //www.pygame.org/docs/ref/surface.html (自提出问题以来的近二十个月内可能已更新。)