python,pysfml。不编码到tex

2021-05-16 07:55:16 发布

您现在位置:Python中文网/ 问答频道 /正文

我想在pysfml中绘制俄语文本,但是我得到了错误。你知道吗

#!/usr/bin/python
# -*- encoding: utf-8 -*-
import sfml as sf
import json
class draws:
    def __init__(self):
        with open('setting.json') as data_file:    
            setting = json.load(data_file)
        print
        self.window = sf.RenderWindow(sf.VideoMode(setting['window_width'],
                                                   setting['window_height']),
                                                   setting['title'])
        self.run()#bot
    def run(self):
        font = sf.Font.from_file("arial.ttf")
        text = sf.Text("Русский текст", font, 16)#this error string
        while self.window.is_open:
            for event in self.window.events:
                if type(event) is sf.CloseEvent:
                    self.window.close()
            self.window.clear(sf.Color.BLUE)
            self.window.draw(text)
            self.window.display()
if __name__ == "__main__":
    Tree = draws()

控制台错误: UnicodeDecodeError:“ascii”编解码器无法解码位置0:序号中的字节0xd0 不在范围内(128)

我使用unicode:

text = sf.Text(u"Русский текст", font, 16)#this error string

很好,但画错字了。 image error 我使用cp1253(俄语编解码器)

text = sf.Text(u"Русский текст".encode('cp1253'), font, 16)

UnicodeEncodeError:“charmap”编解码器无法对位置0-6中的字符进行编码:cha racter映射到

text = sf.Text(u"Русский текст".decode('cp1253'), font, 16)

UnicodeEncodeError:“ascii”编解码器无法对位置0-6:ordin中的字符进行编码 al不在范围内(128) 英语课本。 我现在不认为这是工作。你知道吗