MATLAB Answers

Save PDF for Latex problems in resolution

5 views (last 30 days)
George
George on 26 Apr 2015
Answered: Udit Gupta on 27 Apr 2015
Hello
I am plotting figures in Matlab to then use them in Latex. I am using the following code to change the size of the display while I am using the save2pdf function (<http://uk.mathworks.com/matlabcentral/fileexchange/16179-save2pdf>) to save the pdf.
set(0,'DefaultTextInterpreter','Latex')
grid on
h_xlabel = get(gca,'XLabel');
set(h_xlabel,'FontName','Arial')
set(h_xlabel,'FontSize',18);
h_ylabel = get(gca,'YLabel');
set(h_ylabel,'FontName','Arial')
set(h_ylabel,'FontSize',18);
h_title = get(gca,'Title');
set(h_title,'FontName','Arial')
set(h_title,'FontSize',18);
set(gca,'FontName','Arial')
set(gca,'FontSize',18)
legend boxoff
save2pdf([year,nameloc])
The problem arises when I insert the figure in Latex, the letters became squeezed and very small to see, which troubles me to display my results.
Any ideas would be helpful

  1 Comment

Philip Caplan
Philip Caplan on 27 Apr 2015
Hi George, how does the generated PDF file look (without inserting it in a LaTeX document)? Are the letters still too small to see? Instead of only setting the 'DefaultTextInterpreter', can you also try setting the 'DefaultTextInterpreterMode'?
set(0,'DefaultTextInterpreter','latex')
set(0,'DefaultTextInterpreterMode','manual')

Sign in to comment.

Accepted Answer

Udit Gupta
Udit Gupta on 27 Apr 2015
I do the following operations before saving my figures for latex
set(gcf,'Units','Inches');
pos = get(gcf,'Position');
set(gcf,'PaperPositionMode','Auto','PaperUnits','Inches','PaperSize',[pos(3), pos(4)])
saveas(gcf,sprintf('%s\\%s.pdf',figPath,figName));
After thins the bounding box for the pdf becomes identical to the dimensions of the figure on-screen.

  0 Comments

Sign in to comment.

More Answers (0)

Products

Community Treasure Hunt

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

Start Hunting!