Creating TTF from Playdate Font Tool PNG
It's possible to convert the Playdate Font Tool PNG bitmap font into a TTF outline font.
Required: BitsNPicas app download
(old, outdated guide removed)
It's possible to convert the Playdate Font Tool PNG bitmap font into a TTF outline font.
Required: BitsNPicas app download
(old, outdated guide removed)
This is excellent, Matt! Thanks so much for the step-by-step! My first question is how do I open Bits n' Picas? I've downloaded it and extracted the folder, but I'm looking for an executable file. I have a Windows machine.
OK, on Windows if you download the .jar file you should be able to double click it to run it, or choose Open With... Java.
Make sure you have Java installed: https://www.java.com/en/download/help/download_options.html
Awesome info in this thread. But for this, to get otf2bdf, I had to do brew install otf2bdf
This should be: bdf2bmp -s 0 font.bdf font-table-9-12.bmp
(Sorry if I'm reviving an old thread – but this thread has great info and I didn't see any new info anywhere else – and figured I'd pass on these updates to the info here. I wonder if it's also worth mentioning that Font Tool.app isn't a thing anymore? If I'm correct in understanding that.)
Thanks for those catches!
Correct Font Tool.app no longer exists, it was replaced by Caps.
Follow up question... once I have my .bmp .... how do I bring that into Caps (or otherwise make a .fnt file?)
See this post: Caps suggestions - #4 by shaun (edit: corrected link)
I can't try this right now, but it was true a while ago.
@matt, I'm curious if you got that new QuanPixel font properly converted from .bdf to .fnt ? I used this thread:
And got the ruby script to convert the example adobe font fine, but using the QuanPixel .bdf as an input threw an error:
./bdf2fnt.rb:148:in `encode_func': unknown charset (RuntimeError)
from ./bdf2fnt.rb:169:in `check_code'
from ./bdf2fnt.rb:43:in `readfile'
from ./bdf2fnt.rb:277:in `block in <main>'
from ./bdf2fnt.rb:276:in `each'
from ./bdf2fnt.rb:276:in `<main>'
I guess maybe I should be asking the OP of that script, but just curious if you got QuanPixel converted properly in some other way?
I'd never heard of QuanPixel as so I googled it and see it used to be called Galmuri, which I have heard of!
When I found the Galmuri font on itch I told the dev preview people about it. Shaun Inman did some digging and found that the Galmuri font is based on the Nintendo DS font, so I'm not sure how the can claim OTF or distribute it legally.
To play with that font it is best to load the original .kbits source file into Bits'n'Picas, here's my old fork of that has Playdate font PNG export and supports only the ASCII range of characters (you need to create the associated .fnt file to go with the .png).
I've kicked off some discussion of adding Playdate support to Bits'n'Picas: Interest in adding Playdate font support? · Issue #23 · kreativekorp/bitsnpicas · GitHub
Hmmm... this is very good to know. I'm not sure it's worth playing with the fire that is Nintendo litigation...
Hello! I'm glad that my work has been mentioned here.
I think Galmuri isn't much different from these font projects reprinting classic bitmap fonts: Press Start 2P, Fixedsys Excelsior and IBM BIOS Fonts.
And, as far as I know, the design of typefaces in general is not protected by law. Furthermore, Galmuri is not quite the same as Nintendo's original, some other parts exist, and contains a lot more characters.
If you don't want to even talk about this, it's best to avoid using Galmuri and its derivations.
(If my words are to be taken offensively, I will inform you that I have no intention of doing so. This is because of my English skills.)
Thanks for replying!
My issue is that I would be scared of Nintendo legal action. So I'll use different fonts.
But what you've done with this font is really great work.
Bits'n'Picas 2.0, released alongside Unicode 15, supports Playdate .fnt import and export.
Import
Export FNT
Set font info
Export TTF
I hope this fits in here, it's the tool I use to make all my fonts, it's only designed to make proportional fonts up to 16 pixels high, but if that's what you're after, you might find this useful.
It's quite a bit faster to draw than typical fonts, so if you're after speed, this is for you.
Font format specs: it's basically just 256 bytes with the width of each glyph, followed sequences of four 8x8 bitmaps, for each glyph's pixels.
glyph_width = uf2[c]
*glyph_bitmap = uf2 + 0x100 + (c << 5)
Let's look at the binary content, we can see the glyph width at the top, and 4 tiles per character underneath.
I've been following this. Nice. @tendigits
Any chance it can export a Playdate FNT or maybe just a PNG?
I have a C project for the playdate that uses the uf2 format, but I just draw it directly, the C code to draw this sort of font is minuscule. I'm not super familiar with the font APIs on the playdate, is that something that I can find the documentation for in Pulp? I'm certain I can make a shim to convert uf2 to fnt if you point me toward the docs
Seriously impressed with all your apps and uxn and the whole thing you have going on here. It would be cool to be able to run uxnemu @ 2x as it's pretty small on my screen.
Maybe the example Playdate fonts I posted here help? Interest in adding Playdate font support? · Issue #23 · kreativekorp/bitsnpicas · GitHub
Just a note to say that you can use Bits'n'Picas to import a Playdate FNT and export a TTF, which is very handy for doing mockups with your custom fonts!
Could you add Announcing pdfontconv: a web-based conversion tool to Playdate .fnt from TTF, OTF, WOFF, WOFF2 to the list?