Java 帶滑鼠截圖
阿新 • • 發佈:2019-02-02
上一篇博文簡要說明了Robot類的截圖API。但是沒有現成的API來生成帶滑鼠的截圖。下面給個帶滑鼠截圖的例項。
原理就是截圖後獲取到滑鼠的位置,用java.awt.Graphics2D的.drawImage方法繪製滑鼠即可,程式碼如下:
public class ScreenSnapshot { public static void main(String[] args) { try { Robot robot = new Robot(); Toolkit toolkit= Toolkit.getDefaultToolkit(); Rectangle screen_area= new Rectangle(toolkit.getScreenSize()); Point p= MouseInfo.getPointerInfo().getLocation(); BufferedImage screenshot= robot.createScreenCapture(screen_area); String imagepath = ScreenSnapshot.class.getResource("/").getPath().toString(); BufferedImage cursor= ImageIO.read(new File(imagepath+"cursor.gif"));//cursor.gif 是你的滑鼠圖片 screenshot.createGraphics().drawImage(cursor, p.x, p.y, null); ImageIO.write(screenshot, "jpg", new File("c:/cross/output.jpg")); ImageIO.write(screenshot, "png", new File("c:/cross/output.png")); } catch (HeadlessException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (AWTException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }