My understanding is that Setting the ScaleFactor for the chart (primarily intended for support of HiDPI/Retina) should scale everything proportionally but it is not explained very well).
This feature can use some polish…
It looks like it is ALMOST working… except for axis labels when font size is not explicitly set… Then at 2X, the axis labels are half the size they should be… The workaround is to always explicitly set label font size (which then will be scaled)… but that is not ideal … If this is fixable I would appreciate a fix!
Also IMO the the Scale factor NEEDS to be in the Chart constructor else you need to write code like this
Dim C as New CDXYChartMBS(theWidth*scale, theHeight*Scale)
C.ScaleFactor =Scale
And THAT is not very intuitive!
As you need to do that, I don’t see the point of being able to change the scale factor after creating the object. Also if set in the constructor, that would potentially allow those default values for axis label font size (and perhaps other things) to be adjusted under the hood for scale factor.
BTW in any case when using scalefactor the Resolution of the picture output of MakeChartPicture should set the picture resolution correctly… that way we don’t need to use all of the DrawPicture parameters when drawing in the paint event (or remember to set the picture resolution ourselves)
- karen