zoukankan      html  css  js  c++  java
  • wkhtmltox实现网页转换成图片或pdf

    1.先下载http://download.gna.org/wkhtmltopdf/obsolete/windows/wkhtmltox-0.11.0_rc1-installer.exe,安装

    2.在命令行下输入:wkhtmltopdf www.Google.com.hk myhomepage.pdf 就可以把谷歌的首页导出为pdf文件,

       同理,wkhtmltoimage www.google.com.hk myhomepage.jpg 可以把谷歌的首页导出为图片。

    注意:wkhtmltopdf和wkhtmltoimage对中文编码支持不友好,如果网页是GBK编码,生成的图片或者pdf是乱码,所以最好先把网页下载到本地,改成UTF-8编码,再调用这两个工具生成图片或者pdf。

    以上只是简单应用wkhtmltopdf的命令,事实上这两个命令可以带参数的,详细的参数说明可以看官方文档。

    3.在Java程序中调用wkhtmltoimage。因为wkhtmltoimage并没有提供java api,所以只能通过java程序启动命令行,通过命令行调用wkhtmltoimage来完成任务。

    public class HtmlToImage{
    	public static void main(String[] args){
    		ProcessBuilder pb = new ProcessBuilder("D:\Program Files\wkhtmltopdf\wkhtmltoimage", "www.baidu.com", "D:\test.jpg");
    		Process process;
    		try {
    			process = pb.start();
    			//注意,调用process.getErrorStream()而不是process.getInputStream()
    			BufferedReader errStreamReader = new BufferedReader(new InputStreamReader(process.getErrorStream())); 
    			System.out.println("read errstreamreader");
    			String line = null;
    			line = errStreamReader.readLine(); 
    			while(line != null) { 
    			    System.out.println(line); 
    			    line = errStreamReader.readLine(); 
    			}
    			process.destroy();
    		    System.out.println("destroyed process");
    		} catch (IOException e) {
    			e.printStackTrace();
    		}
    	}
    }

    总结:wkhtmltopdf和wkhtmltoimage是一个功能强大的开源工具,可以实现很多类似的功能。例如,用谷歌搜索时,把鼠标移动到链接上面,会显示该网页的缩略图,这个功能可以用wkhtmltoimage来实现。如果想把博客导出为pdf,可以用wkhtmltopdf来实现。
  • 相关阅读:
    MyEclipse:详细使用教程
    JDK安装与配置详细图文教程
    windows下python3.6版本安装pygame
    windows下如何下载并安装Python
    python的 del 函数是删对象还是删引用
    python strip()函数的用法
    python的垃圾回收机制
    python中的sort方法
    python中del函数的垃圾回收
    两个数交换
  • 原文地址:https://www.cnblogs.com/itsoku123/p/10744332.html
Copyright © 2011-2022 走看看