adrigm
4/8/2013 - 11:34 PM

sfml_texto.cpp

#include <SFML/Graphics.hpp>
#include <iostream>

int main()
{
    // Crea una ventana de 640x480x32 con el título SFML window
	sf::RenderWindow window(sf::VideoMode(640, 480, 32), "SFML window");

	// Activa la sincronización vertical (60 fps)
	window.setVerticalSyncEnabled(true);

	// Creamos un objeto fuente
	sf::Font fuente;
	// Intentamos cargarla
	if (!fuente.loadFromFile("data/OpenSans.ttf"))
	{
		return EXIT_FAILURE;
	}

	// Creamos un objeto texto
	sf::Text texto;
	// Creamos un objeto String
	sf::String cadena;
	// Damos un valor a la cadena
	cadena = "Hola Mundo";
	// Asignamos la cadena al texto
	texto.setString(cadena);
	// Asignamos la fuente que hemos cargado al texto
	texto.setFont(fuente);
	// Tamaño de la fuente
	texto.setCharacterSize(40);
	// Posición del texto
	texto.setPosition(400, 300);
	// Lo rotamos un poco
	texto.rotate(20);

	// Creamos otro texto con la misma fuente
	sf::Text otro_texto("GenbetaDev Mola", fuente, 32);
	// Cambiamos el origen
	otro_texto.setOrigin(otro_texto.getLocalBounds().width/2, 0);
	// Cambiamos la posicion
	otro_texto.setPosition(640/2, 20);
	// Cambiamos el color
	otro_texto.setColor(sf::Color(255, 0, 0));

	// Game Loop mientras la ventana esté abierta
	while (window.isOpen())
	{
		// Creamos un objeto evento
		sf::Event event;
		// Procesamos la pila de eventos
		while (window.pollEvent(event))
		{
			// Si el evento es de tipo Closed cerramos la ventana
			if (event.type == sf::Event::Closed)
			window.close();
		}

		// Limpiamos la pantalla
		window.clear(sf::Color(180, 200, 255));

		// Dibujamos en pantalla
		window.draw(texto);
		window.draw(otro_texto);
 
		// Actualizamos la ventana
		window.display();
	}
 
	return 0;
}