Help with PNG Fonts

Godot Version

Godot 4.5

Question

I would like to use my (very) low resolution pixel font, but i have no idea the correct structure.
I looked into bitmap font applications to help, but let’s just say they diddnt,

I am not sure why this doesnt work, also, feel free to use the font in any of your own projects,
think of it is a gift from me,
textbitmap

I already know how to import it as a PNG bitmap font, but the layout i find to be a long and obnoxious process and i dont want to waste 2 months trying to map it out myself, heh…

1 Like

OMG Thank you! I was really thinking to try making my own font!

1 Like

Aye, but the order of the characters dont work, anyone could just reorder the letters, but i dont KNOW the order …

1 Like

Why did you drew it in out of order lol,is there any templates?

I guess it will take longer to re-position it then drawing xD

Edit: @thesnesmaster you should mark Gertkeno’s post as the solution

1 Like

Eh, i mean i initially just made the font in whatever order i felt like, tried different sources to "fix” it, but uh, nothing i did so far worked…
*Shoot, i should have used a template

1 Like

Thank you very much btw
Wonders why that never clicked before

I will repost the font when i fix it…

1 Like

Here’s an .fnt file mapped to your font. It expects the filename to be my_font.png. I used fontcutter as described in the docs. Your font is missing the number 9 and has some un-mappable characters like the :anger_symbol: emoji and a :face_with_diagonal_mouth: sort of face. These fonts expect to map to ascii-table values.

FNT file
info face="my_font.png" size=8 bold=0 italic=0 charset="" unicode=1 stretchH=100 smooth=1 aa=1 padding=0,0,0,0 spacing=1,1 outline=0
common lineHeight=8 base=8 scaleW=712 scaleH=8 pages=1 packed=0 alphaChnl=1 redChnl=0 greenChnl=0 blueChnl=0
page id=0 file="my_font.png"
chars count=89
char id=32   x=0    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=33   x=8    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=34   x=16    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=42   x=24    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=36   x=32    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=37   x=40    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=38   x=48    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=39   x=56    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=40   x=64    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=41   x=72    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=96   x=80    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=43   x=88    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=44   x=96    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=45   x=104    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=46   x=112    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=47   x=120    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=48   x=128    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=49   x=136    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=50   x=144    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=51   x=152    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=52   x=160    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=53   x=168    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=54   x=176    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=55   x=184    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=56   x=192    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=58   x=200    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=59   x=208    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=60   x=216    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=61   x=224    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=62   x=232    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=63   x=240    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=64   x=248    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=65   x=256    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=66   x=264    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=67   x=272    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=68   x=280    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=69   x=288    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=70   x=296    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=71   x=304    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=72   x=312    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=73   x=320    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=74   x=328    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=75   x=336    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=76   x=344    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=77   x=352    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=78   x=360    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=79   x=368    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=80   x=376    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=81   x=384    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=82   x=392    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=83   x=400    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=84   x=408    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=85   x=416    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=86   x=424    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=87   x=432    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=88   x=440    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=89   x=448    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=90   x=456    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=92   x=464    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=93   x=472    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=94   x=480    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=95   x=488    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=91   x=496    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=97   x=504    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=98   x=512    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=99   x=520    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=100   x=528    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=101   x=536    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=102   x=544    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=103   x=552    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=104   x=560    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=105   x=568    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=106   x=576    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=107   x=584    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=108   x=592    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=109   x=600    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=110   x=608    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=111   x=616    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=112   x=624    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=113   x=632    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=114   x=640    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=115   x=648    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=116   x=656    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=117   x=664    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=118   x=672    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=119   x=680    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=120   x=688    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=121   x=696    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
char id=122   x=704    y=0     width=8    height=8 xoffset=0     yoffset=0     xadvance=8    page=0  chnl=0
2 Likes

Wow thank you, about the uh, emoji things, those were initially designed for uh, “comedic” dialogs i thought of at the time. I planned to just map those to characters “i would never use” in my game.

I actually never knew about fontcutter, otherwise this thread probably wouldnt exist;
this makes my life much easier now, thank you very much