MATLAB Answers

Printing a figure, with LaTex annonations and readable linewidths, to disk

3 views (last 30 days)
David on 18 Sep 2014
Edited: David on 18 Sep 2014
Dear Users,
I have encounter some difficulty printing a figure to the disk and was hoping there is a solution (or at least an explanation) regarding the issues I have found with the -dmeta format.
Background :
I have generated several plots that I would like to save to disk. Executing print using the -dpng format fails to save the LaTex annotations contained within the figure correctly. Printing with the -dmeta format and then converting to *.png in the final document produced the desired result, execpt that the linewidths displayed were either too thick or thin.
Although the print command allows the resolution of a given figure to be manually specified, this approach did not remedy the clunky linewidth issues. As a work around, I increased the size of the figure (and its contents) so that the linewidth increments are less granular, improving scalability.
Consequently, the contents of the figure have become larger than the screen. This does not strictly produce an issue, as adjusting the PaperPosition of the figure allows print to render figure content not displayed on screen.
Now, there has been a bug report suggesting that executing print using the -dmeta format ignores the PaperPosition property of the figure. I did not find the workaround to be effective, but found that unchecking Matlab's "Preferences" > "Figure Copy Options" > "Copy Options" > "Size" > "Match figure screen size" appeared to fix this concern.
Remaining Issue :
The one remaining issue of this approach is that the linear dimensions of the saved *.emf file appear constrained to integer inch lengths.
I would appreciate any information or advice that may help resolve this issue, or achieve an amiable result.


Sign in to comment.

Answers (0)

Community Treasure Hunt

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

Start Hunting!