MATLAB: Problems with text position when printing to PNG in Matlab 2014b

graphicsMATLABplotpng

I have problems with text position when printing to PNG in matlab 2014b.
I am trying to create a simple plot using the code below:
size = [500 600];
%%Create figure
figure('units', 'pixels', 'position', [1 1 size], 'visible', 'on');
set(gcf, 'paperunits', 'points', 'paperposition', [1 1 size]);
%%Axes
axes('units', 'pixels', 'position', [50, 300, 400, 200], 'fontsize', 14, 'box', 'on');
plot([0 1], [0.5 0.5]);
text('units', 'normalized', 'position', [0.5 0.5], 'string', 'TEXT', 'fontsize', 14, 'verticalalignment', 'middle', 'horizontalalignment', 'center');
%%Print to png
filename = 'out.png';
fprintf('Printing to %s\n', filename);
print('-dpng', '-r0', filename);
The result looks like this:
When I change 'size' to [500 900], the text doesn't appear in the middle of the plot:
Can anyone explain this? I run matlab with -nodisplay -nosplash options. The text starts moving away from the center when size is set to around 500×780

Best Answer

This appears to be a bug in R2014b. The code generates the output you expect in R2015a.