⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 screencapturehelper.java

📁 Java远程控制,windows系统和linux系统均测试过
💻 JAVA
字号:
package RemoteAccess.Tools;

import java.awt.AWTException;
import java.awt.Rectangle;
import java.awt.Robot;
import java.awt.Toolkit;
import java.awt.image.BufferedImage;
import java.io.IOException;
import java.io.ByteArrayOutputStream;

import com.sun.image.codec.jpeg.JPEGCodec;
import com.sun.image.codec.jpeg.JPEGEncodeParam;
import com.sun.image.codec.jpeg.JPEGImageEncoder;

public class ScreenCaptureHelper {
	private Rectangle screenRect; 
    private Robot robot;
    private float imageQuality; // 0.0f ~ 1.0f
    
    public ScreenCaptureHelper() throws AWTException {
    	screenRect = new Rectangle(Toolkit.getDefaultToolkit().getScreenSize());
	    robot = new Robot();
	    imageQuality = 0.5f;
    }
    
    private BufferedImage capture() {
    	return robot.createScreenCapture(screenRect);
    }
    
    public byte[] captureAndToByte() throws IOException {
    	BufferedImage bufImage = robot.createScreenCapture(screenRect);
    	
		ByteArrayOutputStream byteArrayStream = new ByteArrayOutputStream();
		JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(byteArrayStream);
		
		JPEGEncodeParam param = encoder.getDefaultJPEGEncodeParam(bufImage);
		param.setQuality(imageQuality, false);
		
		encoder.encode(bufImage);
		
		return byteArrayStream.toByteArray();
    }
    
    public void setImageQuality(float imageQuality) {
    	this.imageQuality = imageQuality;
    }
    
    public float getImageQuality() {
    	return imageQuality;
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -