2017-12-11 2 views
1

Ich hatte ein Pygame-Projekt, das ich nicht-englische Buchstaben, speziell Amharisch Sprachbuchstaben, brauchte. aber die Sache ist, obwohl mein Texteditor die Buchstaben liest und schreibt, pygame scheint sie nicht zu verstehen, es stellt sie einfach als eine Box dar.Schreiben von fremden Buchstaben in pygame screen

hier ist ein einfaches und ähnliches Beispiel des Codes i gemacht:

import pygame,sys 
from pygame.locals import * 
#   R G B 
BLACK = ( 0, 0, 0) 
WHITE = (255, 255, 255) 
pygame.init() 
fontObj = pygame.font.Font('freesansbold.ttf', 25) 
screen = pygame.display.set_mode((400,400)) 
screen.fill(WHITE) 
pygame.display.update() 
while True: 
    letterw= fontObj.render('በ', True, BLACK,WHITE)#this letter for example appeas as a box in the pygame screen 
    #------------------------?--------------------- 
    letterwobj= letterw.get_rect() 
    letterwobj.center = (20, 20) 
    screen.blit(letterw,letterwobj) 
    for event in pygame.event.get(): 
     if event.type == QUIT: 
      pygame.quit() 
      sys.exit() 
    pygame.display.update() 

Ich danke voll für jede Anregung und Hilfe sein würde.

+1

Sie müssen Schriftarten finden und verwenden, die diese Buchstaben enthalten. – skrx

Antwort

1

Aus dem Kommentar von skrx an der Spitze vorgeschlagen, habe ich versucht, eine Schriftart mit dem Namen 'Nyala.ttf' herunterladen und verwenden, aber das hat nicht funktioniert, also habe ich versucht, die Systeme Nyala Schriftart wie folgt zu importieren fontObj = pygame.font.SysFont('nyala', 25) und es funktioniert.

+0

Beachten Sie, dass die Benutzer diese Schriftart auch auf ihren Computern installiert haben müssen. Es wäre besser, die Fontdatei in Ihrem Spielverzeichnis zu speichern und mit [pygame.font.Font] (http://www.pygame.org/docs/ref/font.html#pygame.font.Font) zu laden). – skrx

+0

ya, ich habe versucht, in das Fontverzeichnis des Systems zu gehen und die 'nyala.ttf' Datei zu holen, dann kopierte sie in die pygame Bibliotheksdatei, wo andere Schriftarten gespeichert sind, und lud sie mit pygame.font.Font, aber es gab mir ein Fehler, der sagt, dass es nicht lesbar ist Ich habe auch versucht, die "Nyala.ttf" -Datei aus dem Web herunterzuladen zeigte mir den gleichen Fehler, aber wenn ich es vom System laden, funktionierte es. – Hilea

+0

Legen Sie es in das Verzeichnis, das Ihre .py-Spieldatei enthält. – skrx

0

Sie können den Unicode-Betreiber versuchen:

u'በ' 

oder die Unicode-Funktion:

unicode('በ') 

aber ganz offen auf sie hängt vor allem wenn pygame Unicode-Zeichen darstellen kann.