Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/276.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何在PyGame上正确地重新缩放图像,而不使其严重裁剪?_Python_Pygame - Fatal编程技术网

Python 如何在PyGame上正确地重新缩放图像,而不使其严重裁剪?

Python 如何在PyGame上正确地重新缩放图像,而不使其严重裁剪?,python,pygame,Python,Pygame,我试图在pygame上重新缩放图像,但它会裁剪图像,我只是想更改图像的像素宽度和高度 我使用了pygame.transform.scale并使用1900600作为参数,原始图像是1920x1080 mainmenu = pygame.image.load("Main_Menu.png") mainmenu = pygame.transform.scale(mainmenu, (1900,600)) screen.blit(background, (0, 0)) 我希望将图像重新缩放为1900x

我试图在pygame上重新缩放图像,但它会裁剪图像,我只是想更改图像的像素宽度和高度

我使用了
pygame.transform.scale
并使用1900600作为参数,原始图像是1920x1080

mainmenu = pygame.image.load("Main_Menu.png")
mainmenu = pygame.transform.scale(mainmenu, (1900,600))
screen.blit(background, (0, 0))
我希望将图像重新缩放为1900x600图像,但它会以1900x600格式输出一个裁剪严重的图像。

您必须使用而不是。
使用或将曲面转换为具有适当像素格式的曲面

mainmenu=pygame.image.load(“Main_Menu.png”)
mainmenu=pygame.transform.smoothscale(mainmenu.convert_alpha(),(1900600))
屏幕光点(背景,(0,0))

scale()
执行尽可能快的缩放操作时,
smoothscale()
平滑缩放并计算覆盖像素的颜色的面积平均值

我最终得到了一个错误,这就是Python外壳抛出的错误:回溯(最近一次调用):mainmenu=pygame.transform.smoothscale(mainmenu,(1900600))ValueError:只有24位或32位曲面可以平滑处理scaled@TheForeigner使用
.convert()
.convert\u alpha()