首页前端开发HTML使用cssbox将html文件转为图片文件

使用cssbox将html文件转为图片文件

时间2023-07-29 01:55:03发布访客分类HTML浏览794
导读:在我的另一篇博客 使用freemarker动态填充html并可转为图片中,大家已经了解到如何使用freemarker动态填充html文件了,那么如何将html文件转为图片文件呢?1. 引入依赖<dependency> &...


在我的另一篇博客 使用freemarker动态填充html并可转为图片中,大家已经了解到如何使用freemarker动态填充html文件了,那么如何将html文件转为图片文件呢?

1. 引入依赖

dependency>
    
    groupId>
    net.sf.cssbox/groupId>
    
    artifactId>
    cssbox/artifactId>
    
    version>
    4.14/version>
    
/dependency>
    


2. 编写Util类

public class Html2ImageUtil {


    public static void transferHtml2Image(String htmlFilePath, String imageFilePath, Integer width, Integer height) {
    
        ImageRenderer render = new ImageRenderer();
    
        render.setWindowSize(new Dimension(width, height), false);
    
        String url = new File(htmlFilePath).toURI().toString();

        try {
    
            FileOutputStream out = new FileOutputStream(imageFilePath);
    
            render.renderURL(url, out, ImageRenderer.Type.PNG);

        }
 catch (Exception e) {
    
            e.printStackTrace();

        }

    }

}
    


3. 调用Util

Html2ImageUtil.transferHtml2Image("result.html", "result.png", WIDTH_IMAGE, HEIGHT_IMAGE);
    


然后就可在项目根目录下找到生成的名为"result.png"的图片文件啦。

4. 存在的问题

对于外部引用的js不支持;虽然存在不完美的地方,但仍然不失为一个好用的html转图片的工具哦~

5. 改进

如果大家觉得效果不够好,可以尝试使用cssbox的5.0.0版本,详见我的另一篇博客:使用5.0.0版本的cssbox将html文件转为图片文件,并解决字体显示问题

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!

JavaScript

若转载请注明出处: 使用cssbox将html文件转为图片文件
本文地址: https://pptw.com/jishu/340462.html
服务器租用适合搭建哪些网站 美国ip服务器购买怎么设置

游客 回复需填写必要信息