java html转图片格式_java把html转成图片的方法

代码

1.1 html模版

static String HtmlTemplateStr =

"

"body {background-color: yellow}"+

"h1 {background-color: #00ff00}"+

"h2 {background-color: transparent}"+

"p {background-color: rgb(250,0,255)}"+

"p.no2 {background-color: gray; padding: 20px;}"+

""+

""+

"

我是h1标题

"+

"

"+

""+

"

这是标题 1

"+

"

这是标题 2

"+

"

这是段落

"+

"

这个段落设置了内边距。

"+

""+

""+

"

"+ ""+ " 这是标题 1"+ " 这是标题 2"+ " 这是段落"+ " 这个段落设置了内边距。"+ ""+ ""+ "
"+

"

"

"+

"

Month"+

"

Savings"+

"

"+

"

"+

"

January"+

"

这是第一行

"+

"

"+

"

"+

"

"+

"

这是第二行

"+

"

"+

"

"+

"

有序列表:

"+

"

  1. "+

"

打开冰箱门"+

"

把大象放进去"+

"

关上冰箱门"+

"

"+

"

无序列表:

"+

"

    "+

"

雪碧"+

"

可乐"+

"

凉茶"+

"

";

1.2 引用的转换工具jar包

importgui.ava.html.image.generator.HtmlImageGenerator;

1.3 主要转换代码逻辑

import gui.ava.html.image.generator.HtmlImageGenerator;

public class Html2ImageTest {

static String htmlTemplate = HtmlTemplate.HtmlTemplateStr;

public static void main(String[] args) {

HtmlImageGenerator imageGenerator = new HtmlImageGenerator();

//加载html模版

imageGenerator.loadHtml(htmlTemplate);

//把html写入到图片

imageGenerator.saveAsImage("hello-world.png");

}

}

转换耗时

简单的html页面0.3-0.5秒之间;

稍复杂点的页面在0.9秒甚至更多一点。

转换结果图片

使用cctv.com和cportal的图片可正常显示,使用百度图库、一些素材库网如17sucai的图片不可正常显示。

结果评估

大部分常用的Html元素如h1、p、div、img、table、li、lu等可带样式转换成功,目前常用的input标签转换不成功,在生成的图片中不显示。图片大小显示正常。

转换耗时在0.3-1秒之间,可接受,不影响用户体验。

代码 1.1 html模版 static String HtmlTemplateStr = " "body {background-color: yellow}"+ "h1 {background-color: #00ff00}"+ "h2 {background-color: transparent}"+ "p {background-color: rgb(250,0,255)}"+ "p.no2 {background-color: gray; padding: 20px;}"+ ""+ ""+ " 我是h1标题"+ " "+ ""+ " 这是标题 1"+ " 这是标题 2"+ " 这是段落"+ " 这个段落设置了内边距。"+ ""+ ""+ " "+ " ""+ "Month"+ "Savings"+ ""+ ""+ "January"+ " 这是第一行"+ ""+ ""+ " "+ " 这是第二行"+ ""+ ""+ " 有序列表:"+ " "+ "打开冰箱门"+ "把大象放进去"+ "关上冰箱门"+ ""+ " 无序列表:"+ " "+ "雪碧"+ "可乐"+ "凉茶"+ ""; 1.2 引用的转换工具jar包 importgui.ava.html.image.generator.HtmlImageGenerator; 1.3 主要转换代码逻辑 import gui.ava.html.image.generator.HtmlImageGenerator; public class Html2ImageTest { static String htmlTemplate = HtmlTemplate.HtmlTemplateStr; public static void main(String[] args) { HtmlImageGenerator imageGenerator = new HtmlImageGenerator(); //加载html模版 imageGenerator.loadHtml(htmlTemplate); //把html写入到图片 imageGenerator.saveAsImage("hello-world.png"); } } 转换耗时 简单的html页面0.3-0.5秒之间; 稍复杂点的页面在0.9秒甚至更多一点。 转换结果图片 使用cctv.com和cportal的图片可正常显示,使用百度图库、一些素材库网如17sucai的图片不可正常显示。 结果评估 大部分常用的Html元素如h1、p、div、img、table、li、lu等可带样式转换成功,目前常用的input标签转换不成功,在生成的图片中不显示。图片大小显示正常。 转换耗时在0.3-1秒之间,可接受,不影响用户体验。
经验分享 程序员 微信小程序 职场和发展