当前位置: 技术问答>java相关
如何利用java实现屏幕拷贝的问题
来源: 互联网 发布时间:2015-10-06
本文导语: 最近想要完成一个将屏幕的状态复制到剪贴板,并把图片保存的问题 开始想利用利用机器人printscreen键,但是这个键值找不到。 然后用手工按键但是如何从剪贴板取回图片又没有可以使用的类。 请教各位高手赐教! ...
最近想要完成一个将屏幕的状态复制到剪贴板,并把图片保存的问题
开始想利用利用机器人printscreen键,但是这个键值找不到。
然后用手工按键但是如何从剪贴板取回图片又没有可以使用的类。
请教各位高手赐教!
开始想利用利用机器人printscreen键,但是这个键值找不到。
然后用手工按键但是如何从剪贴板取回图片又没有可以使用的类。
请教各位高手赐教!
|
或许这段代码可以对你有帮助.
import java.awt.*;
import java.awt.image.*;
import java.io.*;
import com.sun.image.codec.jpeg.*;
public class ImageUtils {
public static BufferedImage getScreenImage() throws Exception {
Robot robot = new Robot();
Dimension screenDims = Toolkit.getDefaultToolkit().getScreenSize();
BufferedImage screen = robot.createScreenCapture(new Rectangle(110, 110, screenDims.width, screenDims.height));
MediaTracker tracker = new MediaTracker(new Label());
tracker.addImage(screen, 0);
try {
tracker.waitForID(0);
}
catch (InterruptedException e) {
/** ... */
}
return screen;
}
public static void saveImage(BufferedImage image, String fileName) throws Exception {
FileOutputStream fileStream = new FileOutputStream(fileName);
JPEGEncodeParam encodeParam = JPEGCodec.getDefaultJPEGEncodeParam(image);
JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(fileStream);
encoder.encode(image, encodeParam);
}
public static void main(String[] args) throws Exception {
ImageUtils.saveImage(ImageUtils.getScreenImage(), "screen.jpg");
System.exit(0);
}
}
import java.awt.*;
import java.awt.image.*;
import java.io.*;
import com.sun.image.codec.jpeg.*;
public class ImageUtils {
public static BufferedImage getScreenImage() throws Exception {
Robot robot = new Robot();
Dimension screenDims = Toolkit.getDefaultToolkit().getScreenSize();
BufferedImage screen = robot.createScreenCapture(new Rectangle(110, 110, screenDims.width, screenDims.height));
MediaTracker tracker = new MediaTracker(new Label());
tracker.addImage(screen, 0);
try {
tracker.waitForID(0);
}
catch (InterruptedException e) {
/** ... */
}
return screen;
}
public static void saveImage(BufferedImage image, String fileName) throws Exception {
FileOutputStream fileStream = new FileOutputStream(fileName);
JPEGEncodeParam encodeParam = JPEGCodec.getDefaultJPEGEncodeParam(image);
JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(fileStream);
encoder.encode(image, encodeParam);
}
public static void main(String[] args) throws Exception {
ImageUtils.saveImage(ImageUtils.getScreenImage(), "screen.jpg");
System.exit(0);
}
}
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。