From: Luca Cerone on
Hi all,
I use Matlab to make a lot of figures for my reports.
I'd like to be able to print the figures in a way so that there is a 1:1 ratio between what I display and the saved picture (the -r0 improves the results but I don't get exactly the same results I set using the 'OuterPosition' value).
Also I would like to know if there is a way to save pictures without the "white" border.
More relevantly I would like to know if I can make this behaviour to be the default for matlab, that is to save the default settings to apply to all the figures (like default linewidth, size, resolution on print and so on. So that I won't have to rewrite long command to display (and print) figure properly (I usually save figures using: print([fileName '.png'], '-r0','-dpng')
Any advice is well accepted!
Thanks to all of you for your help.
I'm sorry if I won't answer promptly but I'll be out for some days and might not be able to read the answers!!!
Cheers, -Luca
From: Oliver Woodford on
"Luca Cerone" wrote:
> Hi all,
> I use Matlab to make a lot of figures for my reports.
> I'd like to be able to print the figures in a way so that there is a 1:1 ratio between what I display and the saved picture (the -r0 improves the results but I don't get exactly the same results I set using the 'OuterPosition' value).
> Also I would like to know if there is a way to save pictures without the "white" border.
> More relevantly I would like to know if I can make this behaviour to be the default for matlab, that is to save the default settings to apply to all the figures (like default linewidth, size, resolution on print and so on. So that I won't have to rewrite long command to display (and print) figure properly (I usually save figures using: print([fileName '.png'], '-r0','-dpng')
> Any advice is well accepted!
> Thanks to all of you for your help.
> I'm sorry if I won't answer promptly but I'll be out for some days and might not be able to read the answers!!!
> Cheers, -Luca

getframe does a screen grab of the figure, so you get exactly what is on screen.
set(gcf, 'PaperPositionMode', 'auto') makes print export to the same dimensions as the on screen figure.
Cropping is easy to do in code. However, export_fig (http://www.mathworks.com/matlabcentral/fileexchange/23629-exportfig), will do it for you, and does other nice things, like anti-aliasing, too.

HTH,
Oliver
From: Image Analyst on
Luca:
I also recommend export_fig. There are always so many problems when you try to use the canned MATLAB functions, as you and many others have learned. Why not take advantage of someone who's been through all that pain and figured out a better way of doing it?
From: Luca Cerone on
Thanks for the advice guys,
sorry for the delay but I was out of my office.
I'll have a look at export_fig.
Also, maybe you know how to choose the right font size so that it
looks good when printed?
I can get readable fonts on screen, but when I reduce to the dimension
to use in the report they simply are too small.

Thanks a lot in advance.
Cheers, -Luca
"Image Analyst" <imageanalyst(a)mailinator.com> wrote in message <i170uh$jj5$1(a)fred.mathworks.com>...
> Luca:
> I also recommend export_fig. There are always so many problems when you try to use the canned MATLAB functions, as you and many others have learned. Why not take advantage of someone who's been through all that pain and figured out a better way of doing it?