Printing to -dmeta in 2014b

6 Ansichten (letzte 30 Tage)
Matt
Matt am 13 Nov. 2014
Kommentiert: Jingwan am 24 Mär. 2015
Hi All,
I'm experiencing frustration while printing to the clipboard in 2014b. In prior versions, I created a plot, maximized it to get the best visibility/resolution, set the paper position mode to auto, and then printed the figure to -dmeta. Doing this, the image that was printed to the clipboard has always matched what I've created in the figure.
Now however, when I print the figure to the clipboard, the legend entries get moved over so that they are partially outside the legend box, and the Y-Axis labels get moved down so that they aren't in the center of the Y-Axis. I've verified that in earlier versions the code works as expected.
To complicate this further, if I try this on a different machine, I don't have the problem. The only significant difference between the configurations of the two machines is that the dysfunctional one has two monitors and the working one has only one. Any ideas on why Matlab 2014b and my computer could be doing this? I really like the HG2 graphical engine, but if I can't print the better looking graphics, then Matlab 2014b sadly won't be usable for me.
figure;
subplot(2,1,1)
bar([1,2,3],[3,2,1])
xlabel('Plot 1 X')
ylabel('Plot 1 Y')
legend('Example Legend')
subplot(2,1,2);
bar([1,2,3],[1,2,3])
ylabel('Plot 2 Y')
xlabel('Plot 2 X')
legend('Example Legend')
%Then maximize the plot either manually or programmatically so that everything has space
%MaxPlot(gcf)
set(gcf,'PaperPositionMode','auto')
print(gcf,'-dmeta','-r0')
%On one machine, the legends are now very messed up

Akzeptierte Antwort

Matt
Matt am 19 Nov. 2014
It turned out that the 'painters' renderer is used by default for the 'meta' print driver. To fix this, I'm using the 'zbuffer' renderer instead. I added the following to print.m right before the alternatePrintPath(pj) is called, and text is no longer moving around the screen.
if strcmp(pj.Driver,'meta')
pj.Renderer = 'zbuffer';
end
  2 Kommentare
Doug Hull
Doug Hull am 25 Nov. 2014
Actually, there is no longer a zbuffer renderer. It is going to OpenGL.
Jingwan
Jingwan am 24 Mär. 2015
I am experiencing the same problem. By using 'zbuffer' renderer does not solve it.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Migrate GUIDE Apps finden Sie in Help Center und File Exchange

Produkte

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by