JAVA之網頁截屏


先吐槽一下下:

表示接近兩個月沒有敲代碼了,現在看一下代碼都感覺有點生了。三天打魚兩天曬網是不行的,再說我本來就有“健忘症”,真的是木有辦法啊 ̄へ ̄。我一直信奉一句話:“勤能補拙”,它也是我學習路上的座右銘。一日一學一日功,一日不學十日空,說的一點也沒錯啊。這幾天再重新溫習一下(不能全忘了),由於這台電腦是臨時用的,我就不裝Eslipse去試代碼了。

之前我也寫過JAVA實現截屏效果,用了兩三種方法,發現還是現在的這種方法最簡單。但是要注意的是此方法僅適用於JdK1.6及以上版本。

import java.awt.AWTException;
import java.awt.Desktop;
import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.Rectangle;
import java.awt.Robot;
import java.awt.Toolkit;
import java.awt.event.KeyEvent;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import java.net.MalformedURLException;
import java.net.URISyntaxException;
import java.net.URL;

import javax.imageio.ImageIO;

public class CutPicture {
  public static void main(String[] args) throws MalformedURLException,
  IOException, URISyntaxException, AWTException {
    Desktop.getDesktop().browse(new URL("http://open-open.com/").toURI());
    Robot robot = new Robot();
    robot.delay(10000);
    Dimension d = new Dimension(Toolkit.getDefaultToolkit().getScreenSize());
    int width = (int) d.getWidth();
    int height = (int) d.getHeight();
    // 最大化瀏覽器
    robot.keyRelease(KeyEvent.VK_F11);
    robot.delay(2000);
    Image image = robot.createScreenCapture(new Rectangle(0, 0, width,height));
    BufferedImage bi = new BufferedImage(width, height,
    BufferedImage.TYPE_INT_RGB);
    Graphics g = bi.createGraphics();
    g.drawImage(image, 0, 0, width, height, null);
    // 保存圖片
    ImageIO.write(bi, "jpg", new File("c:/open.jpg"));
    bi.close();
  }
}

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM