PNG vs. FIG File format - saveas function query

7 vues (au cours des 30 derniers jours)
Ferd
Ferd le 20 Avr 2018
Commenté : Ferd le 24 Avr 2018
Hi,
I've been using the saveas function in my code to save the .fig files. However, the format of the .PNG file is quite different. The PNG file looks (size/ font) is different to the .fig plot.
But when I manually saveas from the matlab figure, File-->Save As (save as a PNG file), it saves it correctly without any change in the figure properties.
Is it something that we can make it similar to the .fig file?
Appreciate any responses, thanks in advance!
-Ferdinand
  1 commentaire
Rik
Rik le 20 Avr 2018
Do you mean you want to save the figure contents to a png, just as when you would make a screen capture? If so, there is a submission on the FEX that does just that and is compatible with just about every conceivable Matlab release.

Connectez-vous pour commenter.

Réponse acceptée

Jan
Jan le 21 Avr 2018
 the format of the .PNG file is quite different

It depends on what you save in the PNG, or in other word, if you save a screenshot or use print to create a PNG with modified properties.

To get a copy of the appearance of the figure:

F = getframe(FigHandle);
if isempty(F.colormap)
  RGB = F.cdata;
else
  RGB = ind2rgb(F.cdata, F.colormap);
end
imwrite(RGB, FileName, 'png');
  4 commentaires
Jan
Jan le 24 Avr 2018

@Ferd: Avoid eval as hell. See Tutorial: Avoid EVAL.

Ferd
Ferd le 24 Avr 2018
Didn't have info on it, was trying to write my own code. Updated it with the changes. eval will be avoided at all cost. Feel Mathworks should take away the function for upcoming versions.
Appreciate the advice/ suggestions outside the question, thanks a lot!

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Environment and Settings dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by