Root ScreenSize Property
The ScreenSize property of the root object might not match the display size reported by
high-DPI Windows systems. Specifically, the values do not match when the Units
property of the root object is set to 'pixels'. MATLAB reports the value of the
ScreenSize property based on device-independent pixels, not the size of the actual
pixels on the screen.
Root ScreenPixelsPerInch Property
The ScreenPixelsPerInch property became a read-only property in R2015b. If you
want to change the size of text and other elements on the screen, adjust your operating
system settings.
Also, you cannot set or query the default value of the ScreenPixelsPerInch property.
These commands now return an error:
get(groot,'DefaultRootScreenPixelsPerInch')
set(groot,'DefaultRootScreenPixelsPerInch')
The factory value cannot be queried either. This command returns an error as well:
get(groot,'FactoryRootScreenPixelsPerInch')
Using print, getframe, and publish Functions
getframe and print Functions
When using the getframe function (or the print function with the -r0 option) on a
high-DPI system, the size of the image data array that MATLAB returns is larger than in
previous releases. Additionally, the number of elements in the array might not match the
figure size in pixel units. MATLAB reports the figure size based on device-independent
pixels. However, the size of the array is based on the display DPI.
publish Function
When publishing documents on a high-DPI system, the images saved to disk are larger
than in previous releases or on other systems.
DPI-Aware Behavior in MATLAB