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