Foros del Web » Programando para Internet » Python »

Escribir texto en pygame

Estas en el tema de Escribir texto en pygame en el foro de Python en Foros del Web. Hola, Alguien sabe como escribir un texto en pygame? Es que estoy haciendo un juego, y quiero escribir la vida, nivel, etc.. y no se ...
  #1 (permalink)  
Antiguo 13/03/2010, 13:48
Avatar de pato12  
Fecha de Ingreso: septiembre-2007
Ubicación: Salta
Mensajes: 1.620
Antigüedad: 12 años, 4 meses
Puntos: 101
Escribir texto en pygame

Hola,
Alguien sabe como escribir un texto en pygame? Es que estoy haciendo un juego, y quiero escribir la vida, nivel, etc.. y no se como :S
Gracias
Salu2

PD: Ya busque en google y no encontre (o busque mal, puse "Escribir texto en pygame")
__________________
Half Music - www.halfmusic.com
  #2 (permalink)  
Antiguo 13/03/2010, 16:50
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 14 años, 10 meses
Puntos: 1360
Respuesta: Escribir texto en pygame

Un pequeño hola mundo con pygame.
Código:
import pygame
 
class Text:
    def __init__(self, FontName = None, FontSize = 30):
        pygame.font.init()
        self.font = pygame.font.Font(FontName, FontSize)
        self.size = FontSize
 
    def render(self, surface, text, color, pos):
        text = unicode(text, "UTF-8")
        x, y = pos
        for i in text.split("\r"):
            surface.blit(self.font.render(i, 1, color), (x, y))
            y += self.size   
 
pygame.init()
white = (255, 255, 255)
size = width, height = 640, 480
screen = pygame.display.set_mode(size)
pygame.display.set_caption("Pygame Hello Word!")
color = (0, 0, 0)
text = Text()
 
while True:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            exit()
        if event.type == pygame.KEYDOWN and event.key == pygame.K_ESCAPE:
            exit()
    screen.fill(color)
    text.render(screen, "Hello Word!", white, (0, 0))
    pygame.display.flip()

Última edición por razpeitia; 13/03/2010 a las 17:00
  #3 (permalink)  
Antiguo 13/03/2010, 22:42
Avatar de pato12  
Fecha de Ingreso: septiembre-2007
Ubicación: Salta
Mensajes: 1.620
Antigüedad: 12 años, 4 meses
Puntos: 101
Respuesta: Escribir texto en pygame

Gracias, funciona perfecto :D
__________________
Half Music - www.halfmusic.com
  #4 (permalink)  
Antiguo 16/03/2010, 17:24
Avatar de pato12  
Fecha de Ingreso: septiembre-2007
Ubicación: Salta
Mensajes: 1.620
Antigüedad: 12 años, 4 meses
Puntos: 101
Respuesta: Escribir texto en pygame

Una cosa, si pongo acentos no anda :S da error del programa.
__________________
Half Music - www.halfmusic.com
  #5 (permalink)  
Antiguo 16/03/2010, 18:51
Avatar de dmassive  
Fecha de Ingreso: febrero-2002
Ubicación: Paraná - Entre Ríos - Argentina
Mensajes: 279
Antigüedad: 17 años, 11 meses
Puntos: 7
Pregunta Respuesta: Escribir texto en pygame

Cita:
Iniciado por pato12 Ver Mensaje
Una cosa, si pongo acentos no anda :S da error del programa.
Aqui no hay cosas magicas ni adivinos

lee el error... ¿o al menos contanos cual es el error que te tira? seguro que es lo del unicode con el UTF-8 y la mar en coche...

Si es un problema del font, pues el acento se lo dibujas a mano, es facil dibujar acentos en pygame, sino, este post http://www.ubuntu-es.org/index.php?q=node/7474 explica algo del asunto de los caracteres, espero que te sirva.
__________________
Blümchen... einfach die rave Prinzessin
http://www.dmassive.com.ar/

Etiquetas: escribir, pygame
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:11.