Html转成Image

时间:2023-03-09 13:23:54
Html转成Image

html转图片,原来用了html2image.jar,但是做不到复杂的css js渲染效果。

在网友推荐下,可以用wkhtmltoimage插件,这是用谷歌浏览器的内核webkit,网上搜一下可以下载,同时也是可以wkhtmltopdf,在同一个安装包内。

如果需要参数设置,在cmd中打一下 wkhtmltoimage /?

以下的代码我是用作手机版本的

/**
* 生成图片
* @param nickname 微信昵称
* @param headurl 微信
*/
public static void CreateImage(String nickname,String headurl,String openId){
try { String plugpath="C:\\Program Files\\wkhtmltopdf\\bin\\wkhtmltoimage"; String montherUrl="http://localhost/mother/index.html";
montherUrl=montherUrl+"?nickname="+nickname+"&headurl="+headurl+""; System.out.println(montherUrl); String imgpath="e:\\"+openId+".jpg"; ProcessBuilder pb = new ProcessBuilder(plugpath,"--crop-h","1136","--crop-w","640",montherUrl,imgpath );
Process process;
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();
}
}