print plots to tiff in accurate pixel resolution
Mostrar comentarios más antiguos
Hey everybody!
I am currently fighting with the Matlab print function and I don't know how to get the results I need.
The idea is pretty simple: I read 512x512 px images, then do some feature extraction, overlay the features as polygons using patch() and then I want to write the image back in exactly the same resolution.
However
output_size = [512 512];%Size in pixels
resolution = 300;%Resolution in DPI
set(fig,'paperunits','inches','paperposition',[0 0 output_size/resolution]);
print(fig,'-dtiffn',['-r' num2str(resolution)],'-painters',tiff_name_afm)
Does not work. Indeed the output image IS 512x512, but only because of a large white canvas, whilst the image and graph itself is a lot smaller.
Can anyone help me with this?
Best wishes, Chris
Respuesta aceptada
Más respuestas (1)
Christoph
el 5 de Feb. de 2013
0 votos
1 comentario
Walter Roberson
el 5 de Feb. de 2013
Possibly setting PaperSize is needed; maybe PaperPositionMode as well.
Mixing imshow and patch is not responsible for this difficulty. Printing is a pain.
If setting the PaperSize does not work, then you might get more deterministic output from the File Exchange contribution export_fig
Do you really want to print the whole fig, toolbars and all ? If not then you can export_fig() the axis, or you could toss all the drawing inside a uipanel() and export_fig() or print() the uipanel.
Categorías
Más información sobre Convert Image Type en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!