saving all open figures in script as .png file in a folder

working with image processing toolbox and trying to save all the figures as .png or .jpeg format in a specific folder using the code below:
FolderName = ('G:\Image proccessing\test'); % using my directory
FigList = findobj(allchild(0), 'flat', 'Type', 'figure');
for iFig = 1:length(FigList)
FigHandle = FigList(iFig);
FigName = num2str(get(FigHandle, 'Number'));
set(0, 'CurrentFigure', FigHandle);
saveas(FigHandle, strcat(FigName, '.png'));
end
there is no error but no image is saved.

Answers (1)

It may be that the .png files are being saved in the current working directory (because FolderName (G:\Image proccessing\test) is not being used).
Try this instead:
FolderName = ('G:\Image proccessing\test'); % using my directory
FigList = findobj(allchild(0), 'flat', 'Type', 'figure');
for iFig = 1:length(FigList)
FigHandle = FigList(iFig);
FigName = num2str(get(FigHandle, 'Number'));
set(0, 'CurrentFigure', FigHandle);
% saveas(FigHandle, strcat(FigName, '.png'));
saveas(FigHandle, fullfile(FolderName,strcat(FigName, '.png'))); % specify the full path
end

2 Comments

i realized that pictures was saved in current folder when i posted the question.
i try your suggestion but still the result is the same.
Verify that FigList contains all your figures, and possibly use the debugging utilities to figure out where the code is going wrong.

Sign in to comment.

Categories

Find more on Printing and Saving in Help Center and File Exchange

Products

Release

R2018b

Asked:

on 29 Mar 2022

Commented:

on 31 Mar 2022

Community Treasure Hunt

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

Start Hunting!