views:

17

answers:

0

When I display an instance of System.Windows.Forms.FontDialog (C#), on Windows Vista / 7 printer device-fonts are unavailable (Roman CPI fonts for example). These fonts are however still available from MS Word.

The same application displays the fonts correctly on a Windows XP machine.

I have tried

  MethodInfo mi = typeof(FontDialog).GetMethod("SetOption",
  BindingFlags.NonPublic | BindingFlags.Instance);
  mi.Invoke(fontDialog, new object[] { 0x40000, false });
  fontDialog.ShowDialog(); 

But this only shows a few of the fixed fonts (i.e. Fixedsys)

We also have a legacy VB6 application with the same issue.

How can I get these fonts to display in the dialog?