sunfruit[請訪問http://www.fruitres.cn]

          --我相信JAVA能走得更遠 QQ:316228067

          [轉貼]JAVA截取當前屏幕生成圖片的代碼

          import java.awt.Dimension;
          import java.awt.Rectangle;
          import java.awt.Robot;
          import java.awt.Toolkit;
          import java.awt.image.BufferedImage;
          import java.io.File;

          import javax.imageio.ImageIO;

          /*******************************************************************
          ?* 該JavaBean可以直接在其他Java應用程序中調用,實現屏幕的"拍照"
          ?* This JavaBean is used to snapshot the GUI in a?
          ?* Java application! You can embeded
          ?* it in to your java application source code, and us
          ?* it to snapshot the right GUI of the application
          ?* @see javax.ImageIO
          ?* @author liluqun ([email]liluqun@263.net[/email])
          ?* @version 1.0
          ?*
          ?*****************************************************/

          public class GuiCamera
          {??
          ??? private String fileName; //文件的前綴
          ??? private String defaultName = "GuiCamera";
          ??? static int serialNum=0;
          ??? private String imageFormat; //圖像文件的格式
          ??? private String defaultImageFormat="png";
          ??? Dimension d = Toolkit.getDefaultToolkit().getScreenSize();

          ??? /****************************************************************
          ???? * 默認的文件前綴為GuiCamera,文件格式為PNG格式
          ???? * The default construct will use the default?
          ???? * Image file surname "GuiCamera",?
          ???? * and default image format "png"
          ???? ****************************************************************/
          ??? public GuiCamera() {
          ????? fileName = defaultName;
          ????? imageFormat=defaultImageFormat;
          ????
          ??? }

          ??? /****************************************************************
          ???? * @param s the surname of the snapshot file
          ???? * @param format the format of the? image file,?
          ???? * it can be "jpg" or "png"
          ???? * 本構造支持JPG和PNG文件的存儲
          ???? ****************************************************************/
          ??? public GuiCamera(String s,String format) {
          ????
          ????? fileName = s;
          ????? imageFormat=format;
          ??? }
          ????
          ??? /****************************************************************
          ???? * 對屏幕進行拍照
          ???? * snapShot the Gui once
          ???? ****************************************************************/
          ??? public void snapShot() {
          ????
          ????? try {
          ????? //拷貝屏幕到一個BufferedImage對象screenshot
          ??????? BufferedImage screenshot = (new Robot()).createScreenCapture(new
          ??????????? Rectangle(0, 0, (int) d.getWidth(), (int) d.getHeight()));
          ??????? serialNum++;
          ??????? //根據文件前綴變量和文件格式變量,自動生成文件名
          ??????? String name=fileName+String.valueOf(serialNum)+"."+imageFormat;
          ??????? File f = new File(name);
          ??????? System.out.print("Save File "+name);
          ????? //將screenshot對象寫入圖像文件
          ??????? ImageIO.write(screenshot, imageFormat, f);
          ??????? System.out.print("..Finished!\n");
          ????? }
          ????? catch (Exception ex) {
          ??????? System.out.println(ex);
          ????? }
          ??? }

          ??? public static void main(String[] args)
          ??? {
          ??????? GuiCamera cam= new GuiCamera("d:\\Hello", "png");//

          ??????? cam.snapShot();
          ??? }
          }

          posted on 2006-06-27 13:57 sunfruit 閱讀(1639) 評論(3)  編輯  收藏 所屬分類: JAVA SE & EE

          評論

          # re: [轉貼]JAVA截取當前屏幕生成圖片的代碼 2006-07-11 15:12 cs

          不錯 下次來偷用  回復  更多評論   

          # re: [轉貼]JAVA截取當前屏幕生成圖片的代碼 2006-07-11 22:07 sf

          嘿嘿,好啊  回復  更多評論   

          # re: [轉貼]JAVA截取當前屏幕生成圖片的代碼[未登錄] 2007-10-06 19:18 heaven

          好! 謝謝啊 我找好久了。。。  回復  更多評論   

          主站蜘蛛池模板: 克山县| 老河口市| 拉孜县| 大荔县| 通州市| 新野县| 富源县| 兴文县| 喜德县| 大新县| 黑河市| 大埔区| 即墨市| 合作市| 耒阳市| 香河县| 连平县| 基隆市| 柘城县| 垫江县| 阿合奇县| 汾阳市| 东莞市| 德昌县| 吴桥县| 建宁县| 漳平市| 龙山县| 天峨县| 延长县| 永德县| 蓬安县| 梁河县| 怀集县| 临武县| 东丰县| 积石山| 镇平县| 黄浦区| 布尔津县| 五华县|