html转成图片

依赖

XML 复制代码
<dependency>
    <groupId>org.jsoup</groupId>
    <artifactId>jsoup</artifactId>
    <version>1.13.1</version>
</dependency>
java 复制代码
import org.aspectj.util.FileUtil;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;

import javax.imageio.ImageIO;
import java.awt.*;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;

public class HtmlToImage {

    public static void main(String[] args) throws IOException {

        String outPath = "D:\\work\\project\\jar\\wordtopdf-server\\createWordBytemplate\\src\\test\\java\\simple.png";
        String htmlTemplateStr = "D:\\work\\project\\jar\\wordtopdf-server\\createWordBytemplate\\src\\test\\java\\simple.html";
        String html = FileUtil.readAsString(new File(htmlTemplateStr));

//        String html = "<html><body>Hello, World!<p>This is a simple HTML to Image example.</p></body></html>";
        try {
            BufferedImage image = createImageFromHtml(html);
            ImageIO.write(image, "png", new File(outPath));
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

    public static BufferedImage createImageFromHtml(String html) {
        Document doc = Jsoup.parse(html);
        String text = doc.body().text();

        // Create a BufferedImage
        BufferedImage bufferedImage = new BufferedImage(800, 600, BufferedImage.TYPE_INT_RGB);
        Graphics2D g2d = bufferedImage.createGraphics();
        
        // Set Background Color
        g2d.setColor(Color.WHITE);
        g2d.fillRect(0, 0, 800, 600);

        // Set Text properties
        g2d.setColor(Color.BLACK);
        g2d.setFont(new Font("Arial", Font.PLAIN, 24));

        // Draw Text
        g2d.drawString(text, 50, 50);
        g2d.dispose();

        return bufferedImage;
    }
}

【Java利用poi-tl实现富文本HTML转Word - CSDN App】https://blog.csdn.net/wdy_2099/article/details/117951909?sharetype=blog\&shareId=117951909\&sharerefer=APP\&sharesource=m0_49128301\&sharefrom=link

相关推荐
Mr.朱鹏7 小时前
JVM-GC垃圾回收案例
java·jvm·spring boot·算法·spring·spring cloud·java-ee
Chan167 小时前
LeetCode 热题 100 | 矩阵
java·开发语言·数据结构·算法·spring·java-ee·intellij-idea
Predestination王瀞潞8 小时前
缓存机制:一二级缓存
spring·缓存·mybatis
程序员夏末8 小时前
【AI Agent基础 | 第四篇】Spring AI 集成与多模型支持
java·人工智能·spring·ai·ai agent
Mr.朱鹏8 小时前
分布式-redis哨兵模式架构
数据库·redis·分布式·spring·缓存·架构·java-ee
Chan168 小时前
从生产到消费:Kafka 核心原理与实战指南
java·spring boot·分布式·spring·java-ee·kafka·消息队列
ノBye~8 小时前
IntelliJ IDEA 2024创建项目Maven和Maven Archetype
java·maven·intellij-idea
hopsky8 小时前
idea 运行maven项目出现莫名的错误
java·maven·intellij-idea
Coder_Boy_9 小时前
从Java虚拟机到分布式中间件:高并发体系全解析(含电商实践细节)
java·jvm·分布式·spring·中间件
刘一说9 小时前
深入理解 Spring Boot 的 @ConfigurationProperties:配置绑定机制与最佳实践
java·spring boot·spring