Jak zmusić Pygame do wyświetlania polskich literek? Standardowe:
font = pygame.font.SysFont ("Verdana", 36)
text = font.render ("Tekst ąśćół", 1, (10,10,10))
owocuje krzaczkami, w dokumentacji na ten temat nic nie widzę, w
googlach znalazłem coś po japońsku ale o ile zdołałem się zorientować to
raczej nie to o co mi chodzi.
Może nie ustawia się tego tutaj, tylko jakąś systemową biblioteką
Pythona? Przyznam że akurat tej dokumentacji nie przekopałem dogłębnie,
ale chciałem poprosić o hinta, bo nie za bardzo wiem czego szukać.
# -*- coding: iso-8859-2 -*- mam ustawione.
Wracam do googli, może uda mi się jeszcze coś znaleźć.
--
+---> http://apcoln.linuxpl.org <----- | -----> Aragor...@jabber.org <----+
| Może lepiej nie wiedzieć, że masz tylko siebie |
| Łatwiej karmić się prawdą, że On jest - tylko zasnął |
+---------------=> Aragorn/Vime^LinuxPL.org (Marcin Stępnicki) <=------------+
> Jak zmusić Pygame do wyświetlania polskich literek? Standardowe:
>
> font = pygame.font.SysFont ("Verdana", 36)
> text = font.render ("Tekst ąśćół", 1, (10,10,10))
>
> owocuje krzaczkami, (...)
Użyj Unicode:
text = font.render (u"Tekst ąśćół", True, (10,10,10))
pozdrawiam
--
Zbigniew Chyla
cy...@gnome.pl
cy...@python.org.pl
> On Thu, 20 Nov 2003 22:16:22 +0000, Aragorn/Vime wrote:
>
>> Jak zmusić Pygame do wyświetlania polskich literek? Standardowe:
>>
>> font = pygame.font.SysFont ("Verdana", 36)
>> text = font.render ("Tekst ąśćół", 1, (10,10,10))
>>
>> owocuje krzaczkami, (...)
>
> Użyj Unicode:
> text = font.render (u"Tekst ąśćół", True, (10,10,10))
A jak zamienić zmienną na unicode?
np. text = font.render(zmienna, True, (10,10,10))
>A jak zamienić zmienną na unicode?
>np. text = font.render(zmienna, True, (10,10,10))
np. tak: unicode(zmienna, 'iso-8859-2')
--
JZ
>>A jak zamienić zmienną na unicode?
>>np. text = font.render(zmienna, True, (10,10,10))
>
> np. tak: unicode(zmienna, 'iso-8859-2')
Dziękuję, jednak to mi nie pomogło... Już piszę o co chodzi. Mam w
tej zmiennej kilka \n. I każdy \n jest wyświetlany jako prostokąt :/
Myślałem że unicode pomoże, ale nie pomogło. Czy musze zawartość
tej zmiennej wyświetlać linijka po linijce, czy da się jakoś to
ładnie ominąć?
Pozdrawiam
>Myślałem że unicode pomoże, ale nie pomogło. Czy musze zawartość
>tej zmiennej wyświetlać linijka po linijce, czy da się jakoś to
>ładnie ominąć?
Musisz poeksperymentować. Wygląda na to, że to ta metoda font.render()
coś miesza ze znakami \n.
--
JZ
Dodatkowo metoda malowania tekstu dodatkowo powinna dokonać justyfikacji
oraz domysleć się, że pisanie powinna rozpocząć od prawej do lewej.
Chłopaki bez przesady :)
Jezeli masz wewnątrz jakiegoś ciagu jeszcze np. tabulatory, \x03 lub
jakieś inne znaki nie mające swojej reprezentacji w wybranym foncie to
możesz oczekiwać nieoczekiwanego - pusty znak (word), kwadracik
(charmap) lub cokolwiek innego w zależności od użytej biblioteki.
mak