Anuncios Google

[Lua] Mostrar texto centrado en pantalla

Al principio pensé que sería coser y cantar pero... visto está que no...

Bueno, esto, claro, si en Lua es posible hacer como en VB, es decir, 'formar los parámetros a pasar a una función' in situ, vamos, lo que hago abajo :p

lan = ini.load("blahblahblah")
langig_readed = ini.read(lang, "Savedata", "Lookingfor", "")
screen.print(game.fonts.georgia, 240 - math.ceil(string.len(langig_readed)), 30, langig_readed, 0.75, white, black)
screen.flip()

Como veis primero carga un archivo .ini, después lee de la sección Savedata la key Lookingfor... y... bueno, mi idea es que al imprimir texto en pantalla, pues se usen un poco las mates, es decir, si la pantalla mide de ancho 480 pix, pues la mitad (centrado) son 240.

Obvio es que si empiezas a imprimir en el 240, no te va a salir centrado. De ahí lo de 240 - math.ceil(string.len(langig_readed))/2, se resta a 240 la mitad de la longitud de la cadena que luego se imprimirá. Lo de math.ceil es para evitar problemas con cadenas que midan un número impar, por ejemplo 13 o algo así.

Y, sí, podría haberlo hecho manualmente. Pero... me dio la vena artística... xD

Gracias de antemano, y un saludo!


http://www.mhypnok.blogspot.com/

Gracias a Dark_AleX, Total_Noob, VirtuousFlame, Coldbird, Codestation...


Anuncios Google

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.

string.len te dará el número

string.len te dará el número de carácteres que tiene el string, si quieres saber el ancho, hay una funcion que se llama : screen.textwidth(string[,fuente]) y funciona así:

 

lan = ini.load("blahblahblah")
langig_readed = ini.read(lang, "Savedata", "Lookingfor", "")
screen.print(game.fonts.georgia, 240 - math.ceil(screen.textwidth(langig_readed,game.fonts.georgia)), 30, langig_readed, 0.75, white, black)
screen.flip()

O sea como has puesto antes cambiando el string.len.

Imagen de dj51_Shura

Jeje muchas gracias

ahora mismo lo pruebo... aver... sí, va bien ^^

Muchas gracias, tomaré nota...

Un saludo!

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.