The following code resolves the figure resizing issue:
set(fig, 'PaperPositionMode', 'auto')
where 'fig' is your figure handle. You can also just pass 'gcf'. The 'PaperPositionMode' property (as published in documentation) "...ensures that the printed version is the same size as the onscreen version. With 'PaperPositionMode' set to 'auto' MATLAB does not resize the figure to fit the current value of the 'PaperPosition'."
You may also find the following code to change the grid color and figure background color helpful so further manipulate the figure that is being saved.
set(gcf, 'InvertHardCopy', 'off');
set(gcf, 'Color', [1 1 1]);
Please refer to the various properties listed in the figure properties and axes properties documentation for additional saving and printing settings that may affect the look of your figure when exporting to printer or file.
Best Answer