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();
        }
    }
}
rasd123's Avatar
Banned
Thanks for this site very helpful.
sameer_havakajoka's Avatar
Skilled contributor
welcome, and site is of admin
rasd123's Avatar
Banned
Hello, this is great article. I have blog and I thanks to say you thanks. Regards!
shabbir's Avatar, Join Date: Jul 2004
Go4Expert Founder
Nominate this article for Article of the month - Nov 2009
rasd123's Avatar
Banned
I like this's, cool!
technica's Avatar, Join Date: Dec 2007
CoderByNature
Good one. Thanks for sharing it with us all
rasd123's Avatar
Banned
HaHA! I have already seen the great thing!!!