[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
Re: [pygame] Strange (uncommon) behaviour of Font.render()
you could try
> text = font.render("Hello world!", 1, (255, 255, 0,255), None)
On Jan 9, 2011, at 21:31, Gregor Lingl wrote:
> Executing the script
>
> import pygame
>
> pygame.init()
> screen = pygame.display.set_mode((400, 300))
>
> font = pygame.font.SysFont("Arial", 64)
> text = font.render("Hello world!", 1, (255, 255, 0), None)
> screen.blit(text, (72, 113))
> pygame.display.flip()
>
> pygame.event.clear()
> pygame.event.wait()
>
> results in an exception:
>
> Traceback (most recent call last):
> File "C:\Dokumente und Einstellungen\Entwickler\Eigene Dateien\My Dropbox\___pygame4kids___\kapitel04\programme\render_problem.py", line 9, in <module>
> text = font.render("Hello world!", 1, (255, 255, 0), None)
> TypeError: Invalid background RGBA argument
>
> In the docs for pygame.font.Font() one reads:
>
> Font.render
> draw text on a new Surface
> Font.render(text, antialias, color, background=None): return Surface
>
> ...
>
> See:
> http://www.pygame.org/docs/ref/font.html#pygame.font.Font
>
> So, because in Python
>
> >>> None is None
> True
>
> I expected the call
>
> font.render("Hello world!", 1, (255, 255, 0), None)
>
> to have the same effect as
>
> font.render("Hello world!", 1, (255, 255, 0))
>
> So, what's the matter? What am I missing?
>
> Best regards,
> Gregor
>
>
>