Python 使用pygame绘制图像的好方法是什么?

Python 使用pygame绘制图像的好方法是什么?,python,image,pygame,Python,Image,Pygame,我想知道如何使用pygame绘制图像。我知道怎么装。 我做了一扇空窗户。 当我使用screen.blit(blank,(10,10))时,它不会绘制图像,而是将屏幕保留为空白。在使用blit或绘图表面上的任何其他更新后,您必须调用pygame.display.flip()以实际更新显示内容。在使用blit或绘图表面上的任何其他更新后,必须调用pygame.display.flip()以实际更新显示内容 import pygame, sys, os from pygame.locals impor

我想知道如何使用pygame绘制图像。我知道怎么装。 我做了一扇空窗户。
当我使用
screen.blit(blank,(10,10))
时,它不会绘制图像,而是将屏幕保留为空白。

在使用
blit
或绘图表面上的任何其他更新后,您必须调用
pygame.display.flip()
以实际更新显示内容。

在使用
blit
或绘图表面上的任何其他更新后,必须调用
pygame.display.flip()
以实际更新显示内容

import pygame, sys, os
from pygame.locals import *
pygame.init()
screen = pygame.display.set_mode((100, 100))

player = pygame.image.load(os.path.join("player.png"))
player.convert()

while True:
    screen.blit(player, (10, 10))
    pygame.display.flip()

pygame.quit()
加载文件
player.png
。 运行这个,它工作得很好。希望你能学到一些东西

加载文件
player.png

运行这个,它工作得很好。希望你能学到一些东西。

这是一个典型的布局:

myimage = pygame.image.load("myimage.bmp")
imagerect = myimage.get_rect()

while 1:
    your_code_here

    screen.fill(black)
    screen.blit(myimage, imagerect)
    pygame.display.flip()

这是一个典型的布局:

myimage = pygame.image.load("myimage.bmp")
imagerect = myimage.get_rect()

while 1:
    your_code_here

    screen.fill(black)
    screen.blit(myimage, imagerect)
    pygame.display.flip()
图像由对象表示。可以使用以下图像创建曲面:

my\u image\u surface=pygame.load.image('my\u image.jpg'))
但是,pygame文档指出:

返回的曲面将包含与其来源的文件相同的颜色格式、颜色键和alpha透明度。您通常希望在没有参数的情况下调用,以创建一个可以更快地在屏幕上绘制的副本。
对于alpha透明度,如.png图像,请在加载后使用该方法,以便图像具有每像素透明度

使用适当的转换方法以获得最佳性能:

image\u surface=pygame.load.image('my\u image.jpg').convert()
alpha\u image\u surface=pygame.load.image('my\u icon.png')。convert\u alpha()
可以使用该方法在另一个曲面上绘制曲面或与另一个曲面混合。blit的第一个参数是应该绘制的曲面。第二个参数是表示左上角的元组(x,y)或矩形。对于矩形,只考虑矩形的左上角。应该提到的是,窗口显示也由曲面表示。因此,在窗口中绘制曲面与在曲面上绘制曲面相同:

window_surface.blit(图像_surface,(x,y))
窗口曲面.blit(图像曲面,
image_surface.get_rect(中心=窗口_surface.get_rect().center))

最简单的例子:

导入pygame
pygame.init()
window=pygame.display.set_模式((300300))
clock=pygame.time.clock()
pygameSurface=pygame.image.load('apple.png')。convert_alpha()
运行=真
运行时:
时钟滴答(60)
对于pygame.event.get()中的事件:
如果event.type==pygame.QUIT:
运行=错误
窗口填充((127127127))
blit(pygamessurface,pygamessurface.get_-rect(center=window.get_-rect().center))
pygame.display.flip()
pygame.quit()
退出()

无法加载大多数图像。根据文档,支持以下格式:JPG、PNG、GIF(非动画)、BMP、PCX、TGA(未压缩)、TIF、LBM(和PBM)、PBM(和PGM、PPM)、XPM

如果要在PyGame中使用与其他库一起加载的图像,请参阅:

有关加载可缩放矢量图形(SVG)文件的信息,请参阅:

加载动画GIF文件显示在:

或查看如何加载框架:

图像由对象表示。可以使用以下图像创建曲面:

my\u image\u surface=pygame.load.image('my\u image.jpg'))
但是,pygame文档指出:

返回的曲面将包含与其来源的文件相同的颜色格式、颜色键和alpha透明度。您通常希望在没有参数的情况下调用,以创建一个可以更快地在屏幕上绘制的副本。
对于alpha透明度,如.png图像,请在加载后使用该方法,以便图像具有每像素透明度

使用适当的转换方法以获得最佳性能:

image\u surface=pygame.load.image('my\u image.jpg').convert()
alpha\u image\u surface=pygame.load.image('my\u icon.png')。convert\u alpha()
可以使用该方法在另一个曲面上绘制曲面或与另一个曲面混合。blit的第一个参数是应该绘制的曲面。第二个参数是表示左上角的元组(x,y)或矩形。对于矩形,只考虑矩形的左上角。应该提到的是,窗口显示也由曲面表示。因此,在窗口中绘制曲面与在曲面上绘制曲面相同:

window_surface.blit(图像_surface,(x,y))
窗口曲面.blit(图像曲面,
image_surface.get_rect(中心=窗口_surface.get_rect().center))

最简单的例子:

导入pygame
pygame.init()
window=pygame.display.set_模式((300300))
clock=pygame.time.clock()
pygameSurface=pygame.image.load('apple.png')。convert_alpha()
运行=真
运行时:
时钟滴答(60)
对于pygame.event.get()中的事件:
如果event.type==pygame.QUIT:
运行=错误
窗口填充((127127127))
blit(pygamessurface,pygamessurface.get_-rect(center=window.get_-rect().center))
pygame.display.flip()
pygame.quit()
退出()

无法加载大多数图像。根据文档,支持以下格式:JPG、PNG、GIF(非动画)、BMP、PCX、TGA(未压缩)、TIF、LBM(和PBM)、PBM(和PGM、PPM)、XPM

如果要在PyGame中使用与其他库一起加载的图像,请参阅:

有关加载可缩放矢量图形(SVG)文件的信息,请参阅:

加载动画GIF文件显示在:

  • <