Dynamic Output File Naming - Screen Capture

1 view (last 30 days)
Hello, I have a loop for some image processing and at the end of the each loop, I have to take a screenshot of Matlab. (for my case, imwrite or saveas functions are not applicable for me, that's why I have to use screen capture.)
For this, I've found the following Java-based code;
robo = java.awt.Robot;
t = java.awt.Toolkit.getDefaultToolkit();
rectangle = java.awt.Rectangle(t.getScreenSize());
image = robo.createScreenCapture(rectangle);
filehandle = java.io.File('screencapture.jpg');
javax.imageio.ImageIO.write(image,'jpg',filehandle);
imageview('screencapture.jpg');
I have a basic loop of i.e. 'for i=1:N' and I need to create output files with the "i" name of the loop i.e. for 1st loop, output name should be "1.jpg", second "2.jpg"... etc.
I will be very faithful if you can guide me on this. Thank you very much in advance.

Accepted Answer

Daniel Shub
Daniel Shub on 14 Jul 2011
I think if you change
filehandle = java.io.File('screencapture.jpg');
to
filehandle = java.io.File([num2str(i), '.jpg']);
you should get what you want. The imageview('screencapture.jpg'); will not work anymore though, you will also need to change that ...

More Answers (0)

Categories

Find more on Environment and Settings in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!