从0开始学python第14.5节 pygame 加载图片和声音

pygame.image

上节课的猫咪移动里我们用了cat.png图片,使用了pygame.image 模块,这个模块是pygame用来加载、处理图片的。猫的图片存储在cat.png中,为了加载这个图片,我们使用pygame.image.load()方法,这个方法会返回一个Surface object。而真正要把这个图片加载到窗口上,我们还要调用blit方法来‘复制’这个图片。DISPLAYSURF.blit(catImg, (catx, caty))
这个方法需要两个参数,第一个参数是要copy的对象。第二个参数是一个元组,表达了要copy到哪个位置上。

pygame.font

我们当然可以使用pygame.draw.line()画线的方式来写字,可以这样就太笨拙了。pygame.font模块封装了pygame对文字的操作。
直接看代码:

# 声明一个font对象
fontObj = pygame.font.Font('freesansbold.ttf', 32)
# 渲染文字
textSurfaceObj = fontObj.render('Hello world!', True, GREEN, BLUE)
#设置文字位置
textRectObj = textSurfaceObj.get_rect()
textRectObj.center = (200, 150)
while True: # main game loop
  DISPLAYSURF.fill(WHITE)
  #将文字渲染到DISPLAYSURF上
	DISPLAYSURF.blit(textSurfaceObj, textRectObj)
  for event in pygame.event.get():
      if event.type == QUIT:
          pygame.quit()
          sys.exit()
  pygame.display.update()

这里有个问题需要注意一下,pygame对中文的支持非常不友好,所以学好英语还是很重要的,哈哈。

播放声音

pygame播放声音比较简单,直接使用pygame.mixer模块即可,看代码:

# 定义一个声音对象
soundObj = pygame.mixer.Sound('beeps.wav')
# 播放声音
soundObj.play()
# 暂停声音
soundObj.stop()

总结

到此位置,我们把pygame的核心空间就学习完成了。接下来,我们就可以用pygame编写自己喜欢的游戏了,赶紧开始吧!


你可能感兴趣的:(从0开始学python第14.5节 pygame 加载图片和声音)