You can basically drag and drop it into any DBP project.
Just make sure you put the font folder in your project too.

Further Improvements.
I tried to balance some speed with this, while avoiding the need for people to install plugins.
The text could be anti-aliased better, likely at the cost of speed.
You could also adjust the font image in the font creator.

Sometimes the kerning/spacing is off by a pixel. I've left it in this example again for speed.

I find it's a bit slower than Windows Font based methods, but it's still fast enough for games.

Pro's
Really well written
Greatly described and commented
Demo works without an issue
The apps pretty neat

All round great tutorial in my book

Con's
The speed is the only issue

When it comes to speed, the issue is that there's two of everything that being the original hidden sprites (which there's more of if a full character set) and the pasted sprites. I think you could boost the speed just only using a single sprite and when reading the file, store the size and sprite tex coords and when drawing bfont, update the single sprite and paste it.

Quote: "When it comes to speed, the issue is that there's two of everything that being the original hidden sprites (which there's more of if a full character set) and the pasted sprites. I think you could boost the speed just only using a single sprite and when reading the file, store the size and sprite tex coords and when drawing bfont, update the single sprite and paste it."

Will that work? I'm a bit concerned that changing the tex coords a dozen times before a sync might merely create what ever the last letter was when sync is called. I'll try this out later today. Thanks.

I like the idea of using texture coordinates, I hadn't considered that before. With all the sprites you're creating, wouldn't it be better to use clone sprite instead?

Quote: " I'm a bit concerned that changing the tex coords a dozen times before a sync might merely create what ever the last letter was when sync is called. "

I don't think it should. Cause when you set the coordinates then paste it, that image should already be sent to the pipeline for output. I don't think it references it at the time of drawing. But I can't say I know for sure.

sync on : sync rate 0
// create image
cls rgb(255,0,0)
center text 50,50-(text size()/2),"HELLO WORLD"
get image 1,0,0,100,100,1 : cls
// create out ultimate sprite
sprite 1,0,0,1
hide sprite 1
do
// NOTE: 'n' is used to alter the left position of the rect by half so that we can get
// two images, but the core code is what you want
for n = 0 to 1
// how I work out the uv's (obviously you wouldn't do
// this in the main loop since this would all be stored)
width# = image width(1)
height# = image height(1)
// make a rect selection for what of the image we want
// right/bottom is the size from left top so right/bottom is the size we'll use
left = (n*(width#/2)): top = 0
right = width#/2 : bottom = height#
// work out the UV's //
u1# = left/width# : u2# = right/width#
v1# = top/height# : v2# = bottom/height#
// set the new UV's
set sprite texture coord 1, 0, u1# , v1#
set sprite texture coord 1, 1, u1# + u2#, v1#
set sprite texture coord 1, 2, u1# , v1# + v2#
set sprite texture coord 1, 3, u1# + u2#, v1# + v2#
// set it's rect size (depend if your using a rect or just a size variables)
size sprite 1, right, bottom
// finally paste the result
paste sprite 1,100+(n*100),100
next
sync
loop

Quote: "When it comes to speed, the issue is that there's two of everything that being the original hidden sprites (which there's more of if a full character set) and the pasted sprites. I think you could boost the speed just only using a single sprite and when reading the file, store the size and sprite tex coords and when drawing bfont, update the single sprite and paste it."

Quote: "Example of what I'm talking about:"

I have made a modified version of the code that does this. I have posted the code just below. Surprisingly I found that hidden sprites even moved off screen drag down frame rate in some small way just by existing. The problem is adjusting texture coordinates on each character draw to try and use only one sprite creates a comparable drag on frame rate. Then add the fact that there's 10 fonts here and in a game I would reduce that to 1 or 2. When I do this then the original code seems to be edging the modified code out. With 10 fonts they are neck and neck.

Quote: "I like the idea of using texture coordinates, I hadn't considered that before. With all the sprites you're creating, wouldn't it be better to use clone sprite instead?"

There is no benefit in this case.

Quote: "... Cause when you set the coordinates then paste it, that image should already be sent to the pipeline for output. I don't think it references it at the time of drawing. But I can't say I know for sure."

yes but doing it all that way seems to trade one type of performance overhead for another. I am wrestling with the tradeoffs.