2016-11-20 5 views
0

Ich habe 2 Textabschnitte, die exakt die gleichen Schrifteinstellungen zum Rendern verwenden.Text mit niedriger Qualität aus unbekanntem Grund

Font:

font2 = pygame.font.SysFont(None, 18) 

Text:

   header_text = font2.render("Commodity", True, white) 
       screen.blit(header_text,(300,170)) 

       text0 = font2.render(str(button[1]), True, white) 
       screen.blit(text0,(int(button[4])-100,int(button[5])+4)) 

HEADER_TEXT ist nur eine einfache Zeichenkette, während text0 ein Array verweist.

Es scheint keinen Grund zu geben, warum dieser Text anders machen sollte, aber das folgende Bild zeigt die erste sehr geringe Qualität ist - es ist fett und hat kein Aliasing:

example

Was geht ist hier? Gibt es eine Art Cache, den ich in Python löschen muss?

+0

Wenn Sie den Text mehrere Male ohne Neuzeichnen blitzen, wird dadurch das Anti-Aliasing entfernt, da es teilweise transparente Pixel mehrere Male übereinander platziert. Dies kann die Antwort sein oder nicht, bitte sagen Sie mir, wenn es so ist. – Douglas

Antwort

0

Wenn Sie den Text mehrere Male ohne Neuzeichnen blitzen, wird dadurch das Anti-Aliasing entfernt, da es teilweise transparente Pixel mehrere Male übereinander platziert. Ich habe das entdeckt, als ich eine Pause-Nachricht für ein Spiel programmiert habe.

+0

Was ich gerne wissen würde ist, wie ich magisch erraten habe, dass dies die Antwort auf deine Frage war! XD – Douglas

Verwandte Themen