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设计】。

相关文章

python直接访问私有属性的简单方法

实例化对象名._类名__私有属性名 class Flylove: price = 123 def __init__(self): self.__d...

对Python3 * 和 ** 运算符详解

在 Python 中,* 和 ** 具有语法多义性,具体来说是有四类用法。 1. 算数运算 * 代表乘法 ** 代表乘方 >>> 2 * 5 10 >>...

500行Python代码打造刷脸考勤系统

500行Python代码打造刷脸考勤系统

需求分析 “员工刷脸考勤”系统,采用Python语言开发,可以通过摄像头添加员工面部信息,这里就涉及到两个具体的个问题,一个是应该以什么样的数据来标识每一个员工的面部信息,二是持久化地保...

python3实现跳一跳点击跳跃

借鉴了网上一些大神的代码和思路,这里整理一下写出点击跳跃玩跳一跳这个小游戏的思路 一、整体思路 棋子所在的坐标以及下一步所要到的坐标,根据两个坐标计算出两点之间距离进行跳跃。 二、分布思...

Python中进程和线程的区别详解

Num01–>线程 线程是操作系统中能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。 一个线程指的是进程中一个单一顺序的控制流。 一个进程中可以并发多条线程...