如何以java实现网页截图技术 -

如何以java实现网页截图技术 -

ID:19654018

大小:25.29 KB

页数:12页

时间:2018-10-04

如何以java实现网页截图技术 -_第1页
如何以java实现网页截图技术 -_第2页
如何以java实现网页截图技术 -_第3页
如何以java实现网页截图技术 -_第4页
如何以java实现网页截图技术 -_第5页
资源描述:

《如何以java实现网页截图技术 -》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、如何以Java实现网页截图技术-【Java究竟怎么玩?】-CSDN博客您查询的关键词是:java网页截图。如果打开速度慢,可以尝试快速版;如果想保存快照,可以添加到搜藏;如果想更新或删除快照,可以投诉快照。(百度和网页http://blog.csdn.net/cping1982/archive/2010/03/06/5353049.aspx的作者无关,不对其内容负责。百度快照谨为网络故障时之索引,不代表被搜索网站的即时页面。)【Java究竟怎么玩?】思考因为存在,存在所以思考目录视图摘要视图订阅公告:CSDN博客积分系统正式上线!如何以Java实现网

2、页截图技术分类:JAVA应用技术文章2010-03-0623:405452人阅读评论(63)收藏举报今天看到某网友关于“如何以Java实现网页截图技术”的咨询帖,由于出现该咨询的地点非常不适合较长回复,故以博文形式回答。事实上,如果您想以Java实现网页截图,也就是“输入一段网址,几秒钟过后就能截取一张网页缩略图”的效果。那么,您至少有3种方式可以选择。1、最直接的方式——使用Robot方法详解:该方法利用Robat提供的强大桌面操作能力,硬性调用浏览器打开指定网页,并将网页信息保存到本地。优势:简单易用,不需要任何第三方插件。缺点:不能同时处理大量

3、数据,技术含量过低,属于应急型技巧。实现方法:使用如下代码即可。publicstaticvoidmain(String[]args)throwsMalformedURLException,IOException,URISyntaxException,AWTException{//此方法仅适用于JdK1.6及以上版本Desktop.getDesktop().browse(newURL("http://google.com/intl/en/").toURI());Robotrobot=newRobot();robot.delay(10000);Dimen

4、siond=newDimension(Toolkit.getDefaultToolkit().getScreenSize());intwidth=(int)d.getWidth();intheight=(int)d.getHeight();//最大化浏览器robot.keyRelease(KeyEvent.VK_F11);robot.delay(2000);Imageimage=robot.createScreenCapture(newRectangle(0,0,width,height));BufferedImagebi=newBufferedIm

5、age(width,height,BufferedImage.TYPE_INT_RGB);Graphicsg=bi.createGraphics();g.drawImage(image,0,0,width,height,null);//保存图片ImageIO.write(bi,"jpg",newFile("google.jpg"));}2、最常规的方式——利用JNI,调用第三方C/C++组件方法详解:目前来讲,Java领域对于网页截图组件的开发明显不足(商机?),当您需要完成此种操作时,算得上碰到了Java的软肋。但是,众所周知Java也拥有强大的J

6、NI能力,可以轻易将C/C++开发的同类组件引为己用。优势:实现简单,只需要封装对应的DLL文件,就可以让Java实现同类功能。劣势:同其他JNI实现一样,在跨平台时存在隐患,而且您的程序将不再属于纯Java应用。实现方法:可参见此用例,具体封装何种C/C++组件请自行选择。PS:示例来源于ACAHTMLtoImageConverter项目(http://www.acasystems.com/en/web-thumb-activex/faq-convert-html-to-image-in-java.htm),这是一个收费的HTML转Image第三方

7、组件,但封装方式在Java中大同小异。引用JNI封装:importsun.awt.*;importjava.awt.*;importjavax.swing.*;importjava.awt.event.*;importjava.awt.*;importjava.awt.peer.*;publicclassSnap{static{System.loadLibrary("Snap");}publicstaticvoidmain(String[]argv){Snapt_xSnap=newSnap();t_xSnap.Start("http://www.go

8、ogle.com","snapshot-google.png");}publicnativevoidStar

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。