关于surface对象操作误区

问题

想要尝试对图片surface对象进行操作,例如,在 图片surface对象(img) 上再覆盖一张图片,或向 图片surface对象(img) 上绘制圆,一直无法成功,代码如下

screen = pygame.display.set_mode((600, 400))
screen.fill([255, 255, 255])

imgPath = "resources/pictures/5.jpg"
img = pygame.image.load(imgPath)
img2 = pygame.image.load(imgPath)
screen.blit(img, (200, 200))
img2.fill((255,255,255))
img.blit(img2, (20, 20))

pygame.display.flip()

效果如下

image.png

解决

查阅资料后,发现搞错了顺序,将 图片surface对象(img) 移动到整个Surface对象窗口(screen) 后,无法再进行对 图片surface对象(img) 的操作,调整加载顺序后,代码如下

screen = pygame.display.set_mode((600, 400))
screen.fill([255, 255, 255])

imgPath = "resources/pictures/5.jpg"
img = pygame.image.load(imgPath)
img2 = pygame.image.load(imgPath)
img2.fill((255,255,255))
img.blit(img2, (20, 20))
screen.blit(img, (200, 200))

pygame.display.flip()

执行成功

效果如下:

image.png
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容