Delphi Printing is frustrating me!!

I am getting a bit frstrated with delphi's printing.  I have
had several problems all relating to size of print on printout.

The first problem was that changing the printer did'nt update the DPI of
the printer's Canvas, I got around that by not changing the
printer!

Now I would like to work in MM_LOMETRIC map mode, so I call the
API function to set the map mode.

Now when I print fonts setting the size to a value of points
(the way it should be according to the documentation) I get the
wrong font size on the printout.  

Part of the help file on the size property of the font is below:

  The Size property value is the size of the font, which is the height of
  the font minus the internal leading that appears at the top of the font.
  Whenever you specify a font size in points, use the Size property. If  
you are concerned with the height of the font on the screen--the number  
of pixels the font needs--use the Height property instead of Size.

Well the above simply doesn't work for me!!

If any one has any ideas please let me know.

Regards
C Fraser