File Exchange

image thumbnail

getscreen

version 1.3 (2.69 KB) by

Replacement for getframe for multiple-monitor systems. Also takes screenshots of non-MATLAB windows.

4.66667
3 Ratings

2 Downloads

Updated

View License

GETSCREEN works just like the MATLAB function getframe, but works on any monitor, not just the primary one. (Getframe gives an error if you use it on a figure displayed on your second monitor) Can also be used to take screenshots from any area of your display, whether or not it is a MATLAB figure.

Syntax is the same as getframe, and can be used to capture entire figures or axes, or a rectangular subarea of these. Can also be called using just a position vector to take a screenshot of that area of your display, regardless of whether it is a MATLAB figure or not.

Uses java.awt.robot to take screenshots, so it requires java.

Comments and Ratings (5)

hyun-woo

great! thank you so much.

UEIH UEIH

Enrique

Enrique (view profile)

3 mal = 3 times.
:)

Enrique

Enrique (view profile)

Its a lot faster (3 mal in my computer) if you change the lines 113 - 118 (the Java to Matlab RGB conversion) to:

rasta = typecast(rasta, 'uint8');
X.cdata=zeros(h,w,3,'uint8');

I posted my own version of saurabh kumar screencapture script here
http://www.mathworks.com/matlabcentral/fileexchange/31383-screenshotrgb-make-a-screenshot-using-robot-java-class

Arturo Serrano

Arturo Serrano (view profile)

Thanks for the code. I found it just when a I needed it.
Just a point. I had to add
>> pause (0.01);
after drawnow.

Updates

1.3

updated inspired by

MATLAB Release
MATLAB 7.6 (R2008a)
Acknowledgements

Inspired by: screencapture

Inspired: dropshadow - Drop Shadow class for plot objects

Download apps, toolboxes, and other File Exchange content using Add-On Explorer in MATLAB.

» Watch video

Win prizes and improve your MATLAB skills

Play today