=====
The issue is that SimpleFont does not take points for its size, it takes device independent pixels. That's fine internally, but should not be allowed to make it all the way to the GUI. When a SimpleFont object appears in the GUI, such as on the Indicators dialog, it asks for the size in "px" instead of "pt". I see a couple of usability issues with that.
The primary usability issue is that users are used to specifying font sizes in points. Note that points are just as device independent as the SimpleFont Size units. To illustrate my point, here is one of the first things I turned up when searching:
Tech support (NinjaTrader_ZacharyG) erroneously said
NinjaTrader.Gui.Tools.SimpleFont sf = new NinjaTrader.Gui.Tools.SimpleFont("Times New Roman", 12);
TextFormat textFormat = sf.ToDirectWriteTextFormat();
As another example, I notice that the code breaking changes documentation warns "Objects which previously used System.Drawing.Font now uses new NinjaTrader.Gui.Tools.SimpleFont class:" which is fine as far as it goes. The example it gives, though, is
My point is just that everyone is used to thinking of font sizes in points, so the GUI should go along with that and let the code do otherwise internally if that is desired.
=====
Second, but I would think less serious, is that the Size is in device-independent pixels. How many non-technical users are going to realize that they are specifying in imaginary pixels that are 96 per inch rather than physical pixels on their monitor? The difference is not much with traditional monitors (which is why 96 per inch got picked), but will become more pronounced with higher resolution monitors, such as 4K.
--EV
Comment