I always use d3d_func dll (
here), it is much faster and the text looks much better than the native DBP text. Small usage example (untested):
d3d_init
myFont = 1
d3d_font myFont, "Verdana", 20, 1, 0, 0 `fontID, fontname, size, bold, italic, size measurement
d3d_starttext
d3d_text myFont, 200, 250, 1, "Centered Text", d3d_rgba(255,255,255,128) `<- d3d_rgba allows for transparent text
d3d_endtext
In case you want to use it, just make sure to call d3d_init in the beginning and only use d3d_text in between d3d_starttext and d3d_endtext - and make sure your font IDs are correct, otherwise it doesn't display anything or with wrong font or crashes. I can't remember.

Oh, and define all your different fonts
in the beginning of the program, and not dynamically when you use them.