-1

I have a number of applications which use the default font - MS Sans Serif. On new machines this font is looking increasingly dated and wiry.

I switched to Ms Reference San Serif which looks bolder and crisper, however on many client PCs this doesn't seem to be installed by default.

What are the best practice future-proofed font(s) to use?

N.b. The applications are written in Delphi5 on a Win7 PC.

Many Thanks

David Heffernan
  • 601,492
  • 42
  • 1,072
  • 1,490
notidaho
  • 588
  • 8
  • 28
  • 1
    Not familiar with Delphi5 in the least, but [this question](http://stackoverflow.com/q/2984474/586621) goes over how you may be able to embed fonts into your application. – Jay Sep 30 '13 at 16:04
  • Can you clarify what you mean by "future-proofed"? – djangodude Sep 30 '13 at 19:38
  • By "future-proofed" I mean a font which default on the latest versions of Windows and is likely to be around for as long as possible. The Delphi5 IDE seems to offer the ones installed on my MS edition but apparently this doesn't mean they are default on other editions. – notidaho Oct 01 '13 at 08:48

1 Answers1

2

Your basic approach is incorrect. You are hard coding a font at compile time. Instead you should set the font at run time based on the user's preferences. Call SystemParametersInfo with SPI_GETICONTITLELOGFONT and SPI_GETNONCLIENTMETRICS to find out the user's preferences.

David Heffernan
  • 601,492
  • 42
  • 1,072
  • 1,490
  • 1
    `Screen.IconFont` seems to be available in D5. – Sertac Akyuz Oct 13 '13 at 13:17
  • Thanks guys I will be looking at picking up the system font in future and will eventually mark the post as answered if it works – notidaho Feb 11 '14 at 16:26
  • I ended up implementing your suggestion as an option, setting the font of each form at run time. However the UseParent property cannot always be used for labels which need their own size/colour, so I've decided to use Calibri as my hard coded font. If they ditch it in the next Windows it will ruin my day – notidaho Mar 14 '14 at 12:03