gpt4 book ai didi

python - Pygame blit 区域参数?

转载 作者:太空宇宙 更新时间:2023-11-03 15:49:09 26 4
gpt4 key购买 nike

我目前正在尝试再次对已绘制图像的一部分进行 blit。为此,我读到一个可以在使用 blit 时使用可选的第三个区域参数。我不知道为什么,但这个参数对我来说很奇怪。

据我了解,区域参数是(pos_x、pos_y、宽度、高度)。

我的屏幕是 1280x1024,所以如果我想让我想重绘的部分从中心开始,我会传递类似 (640, 512, 200, 200) 的内容,图像的 200x200 部分应该从中心。

然而,对我来说,图像总是绘制在左上角,区域参数中的前两个数字会改变绘制部分的亮度。

我的代码:

image = pygame.image.load("image.jpg")
image = pygame.transform.scale(image, (self.display.get_width(), self.display.get_height()))
self.display.blit(image, (0,0))
# Drawing something here which has to be overwritten, but cannot redraw everything.
self.display.blit(image, (0,0), (640,512,200,200))

第二个 blit 只是在我的屏幕左上角绘制了一个 200x200 的图像,这比第一次绘制的图像更亮。

亲切的问候

最佳答案

您将 (0, 0) 作为 blit 目标(第二个参数)传递,因此您的表面出现在显示屏的左上角。如果你想在别处绘制它,例如在 (200, 300) 处,你必须将这些坐标作为第二个参数传递:

self.display.blit(image, (200, 300), (640,512,200,200))

关于python - Pygame blit 区域参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47926159/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com