09-14-2012 04:21 AM
I noticed a font changes when running a pre CVI 2012 programm with 2012 runtime.
It appears to be the "NIDialog" Font unless it is "NIDialogMeta".
The UI looks as it should when editing it in CVI 2010.
Is this intended?
It's making UI editing kind of a gamble...
Solved! Go to Solution.
09-14-2012 04:40 AM
An addition: it's NIDialog size 10
Top: CVI 2010 UIR editor
Bottom: Running programm with 2012 runtime
(using "userint/Panels.cws" sample)
09-17-2012 03:25 PM
Yes, you're correct. It looks like the typeface that corresponds to NI Dialog has changed in CVI 2012. This is something that should have been explicitly called out in the readme, and I apologize for that oversight.
NI Dialog is, by design, a "variable font". That mean that it's a font that can correspond to different typefaces in differect computers, since it's tied to an alias (DEFAULT_GUI_FONT) that can resolve to different actual fonts in different computers, different OSes, and potentialy (as in this case) different versions of the CVI runtime. What happened in this case is that a bug was fixed in CVI 2012 in that CVI was previously not taking into account the Microsoft font substitution table:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontSubstitutes
Going back many years now, the DEFAULT_GUI_FONT has corresponded to MS Shell Dlg. It seems to me that MS Shell Dlg is somewhat obsolete and so it turns up in the FontSubstitutes table above, so that applications to replace it with something else. In my PC, that becomes "Microsoft Sans Serif". Before CVI 2012, it was incorrectly not being replaced with Microsoft Sans Serif, whereas now it is.
Sorry about this.
Luis
NI
09-18-2012 02:52 AM
Thank you for the explanation!
I always thought that the "NI" fonts, disregarding the size, are supplied by NI and thus always the same because they are installed with the runtime.
09-18-2012 10:34 AM
Only NI7Seg and NISystem are supplied by NI, and these are already at least 20 years old.