Expecificación formato FNT 32 bits

Started by izubiaurre, February 03, 2009, 06:54:17 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

izubiaurre

Sólo he encontrado las expecificaciones del formato fnt para 8 bits, el cual ya lo tengo. Existe el formato fnt para 16, 32 bits de profundidad? Si existe o se ha creado la expecificación, la necesito para mejorar el visor de FBMX.

Un saludo y gracias de antemano

panreyes

Depaso comentar también que habría que crear un programa para crear FNTs con caracteres especiales (tildes, eñes, etc...) ya que FNT Edit no lo soporta.

Actualmente hago las fuentes con el DIV 2.

SplinterGU

el formato de 16 y 32 es el mismo que el de 8 bits... hay un campo que indica la profundidad...
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

izubiaurre

Y la parte de la paleta se queda vacío?

panreyes

Por cierto, también recordar que existe la de 1 bit.

SplinterGU

exacto, no hay paleta... 1 bit tampoco tiene paleta... tambien obviamente el dato pixel es del tamaño que corresponde.
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

izubiaurre

Splinter, no tendrás por ahí un fuente de 32 bits. Es para probar el visor de FBMX, así tengo con qué trabajar.

Gracias

SplinterGU

no, no tengo...

pero podes usar las funciones:


* FNT_NEW (DEPTH)
Create a new font in memory (returns the font ID)

* GET_GLYPH (FONT, GLYPH)
Create a system map as a copy of one of the font glyphs (returns the map ID)

* SET_GLYPH (FONT, GLYPH, LIBRARY, GRAPHIC)
Change one of the font's glyphs

* SAVE_FNT (FONT, STRING FILENAME)
Saves a font to disk


y crearte tu propio font de la profundidad que quieras (de las soportadas por el render, obviamente)
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

izubiaurre

Bueno,vengo con otra pregunta:

¿Exactamente qué carácteres o letras entran en los grupos de symbols y extendend? He estado mirando en el manual de DIV porque me sonaba que aparecían qué carácteres contenía cada grupo, pero no he encontrado nada.

Un saludo

SplinterGU

Download Lastest BennuGD Release: http://www.bennugd.org/node/2

izubiaurre

Quote from: SplinterGU on February 09, 2009, 06:42:20 PM
los 256 caracteres ASCII.
Supongo que lo son. Pero no sé cómo se dividen en esos dos grupos, cuáles pertenecen a los símbolos y cuáles a los extendidos (ideas generales aparte).

SplinterGU

Eso realmente no importa mucho, son 256 caracteres que corresponden al valor numerico de 0-255 (1-255 en realidad)...
Representen lo que representen... uno puede crear un font completo que no contenga ni un solo caracter, que solo contenga dibujitos... o lo que sea...
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

izubiaurre

Bueno, en el viejo manual de DIV encontré al final dónde se nombraban.

Lista de símbolos: # ª º $ P f (función) Libra Yen C-extraño
Extendido: ñ ç ae(junto) âäàa(con º encima)á e i o u ÿ

Me parece que son pocos, ¿falta alguno verdad?

SplinterGU

aca te paso la tabla de ascii que yo usaria




Download Lastest BennuGD Release: http://www.bennugd.org/node/2

izubiaurre

#14
Otra cosa. Para diferenciar si el fnt está en formato 8bpp, 16bpp ó 32bpp, se debería mirar en el dato de versión, ¿me equivoco? Hasta ahora esto estaba siempre a cero.

Cabecera
Un fichero FNT comienza con la siguiente cabecera:


MAGIC                        3 bytes      Cadena de caracteres de identificación del fichero. Debe contener exactamente "fnt", en minusculas.

TERMINACION MS-DOS 4 bytes      A continuación, los cuatro bytes 1Ah, 0Dh, 0Ah y 00h. Esta terminación indica, en un fichero MS-DOS, final de fichero. Gracias a ella un comando TYPE en MS-DOS no mostraría los datos binarios del fichero.

VERSION                    1 byte       Código de versión. Debido a que no se han introducido cambios en el formato, este valor es siempre 00h.