How can convert two (file.fig) to (file.jpg) in the same time?
조회 수: 2 (최근 30일)
이전 댓글 표시
Hello All,
I would like to convert (file.fig) to (file.jpg) in the same time (each file contents 5 plots) to reduce the time. I used this code to convert one file.fig:
figs = openfig('Fall_ABS.fig');
for K = 1 : length(figs)
filename = sprintf('figure_%02d.jpg', K);
saveas(figs(K), filename);
end
close all
How can I update this code to convert two files.
Thanks in advance,
Riyadh
댓글 수: 0
채택된 답변
John BG
2016년 12월 22일
편집: John BG
2016년 12월 25일
put all figures to translate to .jpg in a same folder
put all .fig in same folder
cd 'folder_figures'
get in the folder
system('dir /o:n /b > list.txt')
build list
fid=fopen('list.txt')
s1=textscan(fid,'%s')
fclose(fid)
measure how many figures
[sz1 sz2]=size(s1{1})
load all figures in workspace
h0=[];
for k=1:1:sz1
if regexp(cell2mat(s1{1}(k)),'.fig')
s=openfig(cell2mat(s1{1}(k)));
h0=[h0 s];
end;
end;
save figures in same file
savefig(h0,'all_figures.fig')
Riyahd, do the figure handles have to be in separate variables, or is it ok that all such handles are in a 1x10 vector of handles?
if you find my answer useful would you please mark it as Accepted Answer by clicking on the ACCEPT ANSWER button?
thanks in advance for time and attention
John BG
댓글 수: 3
추가 답변 (1개)
Jan
2017년 1월 17일
folder = cd; % Set accordingly
figs = dir(fullfile(folder, '*.fig'));
for K = 1:length(figs)
FigH = openfig(fullfile(folder, figs(K).name));
filename = fullfile(folder, sprintf('figure_%02d.jpg', K));
saveas(FigH, filename);
close(FigH);
end
댓글 수: 2
Jan
2017년 1월 26일
Do you mean "folder = cd"? This means that the variable "folder" should be set to the folder your images are stored in. Using absolute paths is safer than relying on the current folder.
참고 항목
카테고리
Help Center 및 File Exchange에서 Printing and Saving에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!