python3下pygame如何实现显示中文

yipeiwu_com6年前Python基础

这篇文章主要介绍了python3下pygame如何实现显示中文,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

1.先看代码:

import pygame
from pygame.locals import *
def main():
  pygame.init()
  screen = pygame.display.set_mode((1000, 450)) #窗口的大小
  pygame.display.set_caption('pygame程序的界面的中文设置') #窗口标题,中文不需要特别的设置
  background = pygame.Surface(screen.get_size())
  background = background.convert()
  background.fill((250, 250, 250))
  #font = pygame.font.Font(None, 60) #原始代码,使用默认字体,不能显示中文
  font = pygame.font.Font('/home/xgj/Desktop/simsun/simsun.ttf', 60) #显示中文的设置和字体,及路径
  text = font.render("Hello 我爱你", 1, (10, 10, 10)) 
  textpos = text.get_rect()
  textpos.center = background.get_rect().center
  background.blit(text, textpos)
  screen.blit(background, (0, 0))
  pygame.display.flip()
  while 1:
    for event in pygame.event.get():
      if event.type == QUIT:
        return
        screen.blit(background, (0, 0))
        pygame.display.flip()

if __name__ == '__main__': 
  main()

2.效果:

3.注意字体:

字体需要自己下载好,放置一个指定的文件夹

如:本游戏中的字体:

simsun.ttf

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

pandas通过loc生成新的列方法

pandas通过loc生成新的列方法

pandas中一个很便捷的使用方法通过loc、iloc、ix等索引方式,这里记录一下: df.loc[条件,新增列] = 赋初始值 如果新增列名为已有列名,则在原来的数据列上改变 i...

Python continue语句用法实例

Python continue语句用法实例

Python使用 continue 语句跳出循环,而break跳出整个循环。continue 语句用来告诉Python跳过当前循环的剩余语句,然后继续进行下一轮循环。continue语句...

Python利用PyExecJS库执行JS函数的案例分析

Python利用PyExecJS库执行JS函数的案例分析

  在Web渗透流程的暴力登录场景和爬虫抓取场景中,经常会遇到一些登录表单用DES之类的加密方式来加密参数,也就是说,你不搞定这些前端加密,你的编写的脚本是不可能...

详解python开发环境搭建

详解python开发环境搭建

虽然网上有很多python开发环境搭建的文章,不过重复造轮子还是要的,记录一下过程,方便自己以后配置,也方便正在学习中的同事配置他们的环境。 1.准备好安装包 1)上python官网下载...

python中hasattr()、getattr()、setattr()函数的使用

python中hasattr()、getattr()、setattr()函数的使用

 引言:   在阅读源码时,有很多简写的形式,其中一个比较常用的就是getattr()用来调用一个类中的变量或者方法,相关联的hasattr()、getattr()、setat...