Screenshot capturing and saving in local System

sameer_havakajoka's Avatar author of Screenshot capturing and saving in local System
This is an article on Screenshot capturing and saving in local System in Java.

Introduction



This Code snippet is used to capture Screenshot automatically and save it.

The below code performs the function of taking screenshots automatically making use of the class java.awt.Robot .The package java.awt contains all of the classes for creating user interfaces and for painting graphics and images.

The class java.awt.Toolkit helps in obtaining the screen size of the page and the class java.awt.Rectangle creates a rectangle with the same dimensions of the page.

The class java.awt.image.BufferedImage helps in creating a image containing pixels and colour similar to page and this does not involve the mouse cursor.

The taken screen shot can be stored in any mode depending on user's preference.

Thus this code automates the procedure of obtaining screenshots so the user may find it easier to know the status of the page .

The code



Code: Java
package businessFunctions;

import java.awt.Dimension;
import java.awt.Rectangle;
import java.awt.Robot;
import java.awt.Toolkit;
import java.awt.image.BufferedImage;
import java.io.File;
import javax.imageio.ImageIO;

public class Screenshot
{
    public void captureScreen(String nameOfScreenshotFile, String formatOfFile, String screenshotPath) throws Exception
    {
        /*Dimension obj helps in adjusting the width and height of the file */

        Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
        /*create a rectangle starting from (0,0)(top,left) to the width and height in the dimension obj */

        Rectangle screenRectangle = new Rectangle(screenSize);
        Robot robot = new Robot();
        BufferedImage image = robot.createScreenCapture(screenRectangle);
       
        /*Creates an image containing pixels read from the screen. This image does not include the mouse cursor.*/
        
        ImageIO.write(image, formatOfFile, new File(screenshotPath+nameOfScreenshotFile+"."+formatOfFile));
    }
    
    public static void main(String args[])
    {
        Screenshot obj=new Screenshot();
        try
        {
            obj.captureScreen("trial","jpeg","C:\\Documents and Settings\\sameer\\My Documents\\EclipseProjects\\Screenshot\\DEST\\");
        }
        catch (Exception e)
        {
            e.printStackTrace();
        }
    }
}
Banned
3Dec2009,06:02   #2
rasd123's Avatar
Thanks for this site very helpful.
Skilled contributor
3Dec2009,10:46   #3
sameer_havakajoka's Avatar
welcome, and site is of admin
Banned
4Dec2009,05:58   #4
rasd123's Avatar
Hello, this is great article. I have blog and I thanks to say you thanks. Regards!
Go4Expert Founder
7Dec2009,09:26   #5
shabbir's Avatar
Nominate this article for Article of the month - Nov 2009
Banned
8Dec2009,05:57   #6
rasd123's Avatar
I like this's, cool!
CoderByNature
18Dec2009,12:31   #7
technica's Avatar
Good one. Thanks for sharing it with us all
Banned
19Dec2009,05:40   #8
rasd123's Avatar
HaHA! I have already seen the great thing!!!