Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people, just like you, are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
Solved

take a screen shot and store it

Posted on 2004-09-07
9
217 Views
Last Modified: 2010-03-31

Hi, I want to take a screenshot of a particular screen on on my system and store it as a jpeg. Is it possible to do this? If so how do I specify where to save the screen shot on my pc? Also is it possible to specify what program I want the jpeg (just this specific jpeg, not all jpegs on the system) to open with? in this case mozilla firebird. Thanks
0
Comment
Question by:VolSpeak
9 Comments
 
LVL 86

Accepted Solution

by:
CEHJ earned 125 total points
ID: 12001161
Try

Rectangle screenRect = new Rectangle(Toolkit.getDefaultToolkit().getScreenSize());
BufferedImage bi = new Robot.createScreenCapture(screenRect);
ImageIO.writeImage(bi, "jpg", new FileOutputStream("screen.jpg");

What program opens a jpeg is not a Java issue - it's an OS one
0
 
LVL 18

Expert Comment

by:armoghan
ID: 12003137
You can use
Runtime.getRuntime.exec()
to open the java file in some specific program
0
 

Author Comment

by:VolSpeak
ID: 12010098

Thanks for that CEHZ, this is the code im using:

  // capture the whole screen
BufferedImage screencapture = new Robot().createScreenCapture(
   new Rectangle(10, 10, 900, 750));
   
   // Save as JPEG
     File file = new File("screencapture.jpg");
     ImageIO.write(screencapture, "jpg", file);

For a points increase:
 The screen I want to capture has a scroll, is it possible to include the unscrolled part of the screen in the capture as well?
0
Free Tool: Path Explorer

An intuitive utility to help find the CSS path to UI elements on a webpage. These paths are used frequently in a variety of front-end development and QA automation tasks.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

 
LVL 86

Expert Comment

by:CEHJ
ID: 12010131
>>is it possible to include the unscrolled part of the screen in the capture as well?

AFAIK - no. Only what's visible. btw what kind of desktop scrolls?
0
 

Expert Comment

by:michaelfriesy
ID: 12010269
Its an open file, do you know of any work around?
0
 

Expert Comment

by:michaelfriesy
ID: 12010289
Apologies, not double accounts with one user, theres two of us using the same system....
0
 

Expert Comment

by:michaelfriesy
ID: 12010326
Ive just had an idea, can the resolution of the screen be changed using java so the whole file will be within the window?
0
 
LVL 86

Expert Comment

by:CEHJ
ID: 12010349
>>can the resolution of the screen be changed using java so the whole file will be within the window?

Yes, but not without JNI or a Runtime.exec call
0
 
LVL 86

Expert Comment

by:CEHJ
ID: 12111123
8-)
0

Featured Post

Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

After being asked a question last year, I went into one of my moods where I did some research and code just for the fun and learning of it all.  Subsequently, from this journey, I put together this article on "Range Searching Using Visual Basic.NET …
Introduction This article is the first of three articles that explain why and how the Experts Exchange QA Team does test automation for our web site. This article explains our test automation goals. Then rationale is given for the tools we use to a…
Viewers will learn about the regular for loop in Java and how to use it. Definition: Break the for loop down into 3 parts: Syntax when using for loops: Example using a for loop:
This video teaches viewers about errors in exception handling.

856 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question