任务目标:将图片放在屏幕正中央的两种方法
方法一:数学方法
使用方法:使用 image.get_rect()方法获得图像的长(.right)和宽(.bottom),利用数学方法计算出中心点位置并赋值给图像放置位置。
实现代码:
import pygame,sys
pygame.init()
screen =pygame.display.set_mode([640,480])
pygame.display.set_caption("按键测试")
bg_color= [255,255,255]
screen.fill(bg_color)
image = pygame.image.load("D:\pythonstudy\pygameStudy\skyrobot\images\ship.bmp")
rect = image.get_rect()
while True:
#方法一:将图片放在屏幕正中央
rect_x = (screen.get_width()-rect.right)/2
rect_y = (screen.get_height()-rect.bottom)/2
for event in pygame.event.get():
if event.type == pygame.QUIT:
sys.exit()
screen.blit(image, [rect_x,rect_y])
pygame.display.flip()
方法二:使用center属性
方法说明:获得屏幕的中心点坐标,直接把该坐标赋值给图像的中心点坐标
代码实现:
import pygame,sys
pygame.init()
screen =pygame.display.set_mode([640,480])
pygame.display.set_caption("按键测试")
bg_color= [255,255,255]
screen.fill(bg_color)
image = pygame.image.load("D:\pythonstudy\pygameStudy\skyrobot\images\ship.bmp")
rect = image.get_rect()
screen_rect = screen.get_rect()
while True:
#方法二:将图片放在屏幕正中央
rect.center = screen_rect.center
for event in pygame.event.get():
if event.type == pygame.QUIT:
sys.exit()
screen.blit(image, rect)
pygame.display.flip()
print(rect.center)
这篇博客介绍了如何在Pygame中将图像精确地放置在屏幕正中央。提供了两种方法,一是通过数学方法计算图像的中心点位置,二是直接利用屏幕中心坐标设置图像的center属性来实现图像居中。

1242

被折叠的 条评论
为什么被折叠?



