Quote: "I've been waiting more than seven months now for him to address my question"
I was curious, and only bad things happen when I am curious. I went to Cloggy's website and downloaded his source code for his latest release. I know nothing about c++ but I thought I would peruse it anyway. I came across this:
void StartText(void)
{
g_pViewPort.X = 0;
g_pViewPort.Y = 0;
g_pViewPort.Width = g_pGlob->dwWindowWidth;
g_pViewPort.Height = g_pGlob->dwWindowHeight;
// TODO: Should these be CameraNear/Far?
g_pViewPort.MinZ = 0.0f;
g_pViewPort.MaxZ = 1.0f;
g_pD3DDevice->SetViewport(&g_pViewPort);
Now again, I don't know C++, but I see something in there about viewports. It sets the viewport to 0,0 to dbWindowWidth,dbWindowHeight. That works great if you are printing to the entire screen, but Agent's problem is printing to bitmaps that aren't. Perhaps d3d_starttext should have optional "x,y,w,h" parameters to specify the size of the viewport... I could be pulling this out of my ___ too.
If the weather is nice tomorrow (fat chance, forecast is rain for the next 2 weeks) I plan to paint the house, otherwise I am reinstalling my Visual Studio and seeing what I can accomplish.
Edit: On second thought, maybe we just need a d3d_setviewport x,y,w,h command, and a d3d_resetviewport. Then the viewport created by that can be used by all the d3d commands. This would help alot... I am gonna have a crack at it unless someone with more C++ knowledge would like to try first.
Edit2: Opened the project, made all the changes I thought were necessary, but when I try to build it I get errors saying I am missing some d3d header files...
Edit3: VC++ is not my strong point. I am officially giving up, although I still think a SetViewport command would be awesome.
Edit4: I am nothing if not persistant. I managed to add my own commands to the d3d_func dll (thanks to some serious googling). Below is some source code and the resulting image.
d3d_init
d3d_font 1, "Arial",30,0,0,0
d3d_setviewport 100,100,200,200
d3d_box 0,0,500,500,d3d_rgba(255,0,0,255)
d3d_starttext
d3d_text 1,0,100,0,"Testing some really long string", d3d_rgba(255,255,255,255)
d3d_endtext
d3d_resetviewport
d3d_starttext
d3d_text 1,0,200,0,"Testing some really long string", d3d_rgba(0,0,255,255)
d3d_endtext
However, after doing so I am starting to think that this won't fix your text size problems. It will fix my problem with making a scrollable text box and not having the top and bottom lines overflow out of the box...
Edit5: Reworked my viewport commands so they affect standard DBPro commands as well, such as paste image.