html转word或pdf

简介: html转word或pdf

差以毫厘,谬以千里。——班固《汉书》

使用的组件还是Spire.Doc,可以看我这篇博客

如果我们遇到html,需要直接渲染到word或者pdf上,可以使用官方文档给的例子

import com.spire.doc.*;
import java.io.*;
public class htmlStringToWord {
    public static void main(String[] args) throws Exception {
        String inputHtml = "InputHtml.txt";
        //新建Document对象
        Document document = new Document();
        //添加section
        Section sec = document.addSection();
        String htmlText = readTextFromFile(inputHtml);
        //添加段落并写入HTML文本
        sec.addParagraph().appendHTML(htmlText);
        //文档另存为PDF
        document.saveToFile("HTMLstringToPDF.pdf", FileFormat.PDF);
    }
    public static String readTextFromFile(String fileName) throws IOException{
        StringBuffer sb = new StringBuffer();
        BufferedReader br = new BufferedReader(new FileReader(fileName));
        String content = null;
        while ((content = br.readLine()) != null) {
            sb.append(content);
        }
        return sb.toString();
    }
}

但如果我们想使用替换书签的方式去做,那就需要自己写了,官网是没有找到这个东西的

我这里写的函数可以实现

/**
 * @MethodName: fillReplaceHtml
 * @Description: 填充替换掉html标签后的文本
 * @Date: 2020/12/28 0028 15:02
 * *
 * @author: <achao1441470436@gmail.com>
 * @param: [doc, bookmarkName, data]
 * @returnValue: void
 */
public static void fillReplaceHtml(Document doc, String bookmarkName, String data) {
    // 定位书签
    BookmarksNavigator bookmarkNavigator = new BookmarksNavigator(doc);
    bookmarkNavigator.moveToBookmark(bookmarkName);
    // 创建段落
    Paragraph para = new Paragraph(doc);
    // 创建文本内容
    TextRange textRange = para.appendText(StringUtils.replaceHtml(data));
    // 设置格式
    CharacterFormat format = textRange.getCharacterFormat();
    // 大小
    format.setFontSize(9);
    // 创建文本域
    TextBodyPart bodyPart = new TextBodyPart(doc);
    // 添加段落到文本域
    bodyPart.getBodyItems().add(para);
    // 替换书签内容
    try {
        bookmarkNavigator.replaceBookmarkContent(bodyPart);
    } catch (Exception e) {
        log.error("书签《" + bookmarkName + "》丢失", e);
    }
}
相关文章
|
3月前
|
应用服务中间件
使用 Adobe Livecycle Enterprise service 将 word 文档转换成 PDF 格式
使用 Adobe Livecycle Enterprise service 将 word 文档转换成 PDF 格式
29 0
iframe 在线预览pdf、word、excel、ppt、txt、图片、视频
iframe 在线预览pdf、word、excel、ppt、txt、图片、视频
|
9天前
|
Python
python html(文件/url/html字符串)转pdf
python html(文件/url/html字符串)转pdf
9 0
|
2月前
|
数据采集 移动开发 前端开发
springboot使用html模版导出pdf文档
springboot使用html模版导出pdf文档
|
3月前
|
Java Linux 数据安全/隐私保护
Java【代码 16】将word、excel文件转换为pdf格式和将pdf文档转换为image格式工具类分享(Gitee源码)aspose转换中文乱码问题处理
【2月更文挑战第3天】Java 将word、excel文件转换为pdf格式和将pdf文档转换为image格式工具类分享(Gitee源码)aspose转换中文乱码问题处理
107 0
|
3月前
|
Java 程序员 数据安全/隐私保护
分享一个word转pdf的工具类Aspose[java]
分享一个word转pdf的工具类Aspose[java]
48 0
|
3月前
|
数据安全/隐私保护 Python Windows
Python办公自动化【Word转换PDF、PDF读取内容、PDF合并文件、PDF拆分文件、PDF加密文件、PPT基本操作-增加幻灯片、增加内容】(六)-全面详解(学习总结---从入门到深化)
Python办公自动化【Word转换PDF、PDF读取内容、PDF合并文件、PDF拆分文件、PDF加密文件、PPT基本操作-增加幻灯片、增加内容】(六)-全面详解(学习总结---从入门到深化)
50 0
|
4月前
|
存储 Shell 数据安全/隐私保护
Python 自动化指南(繁琐工作自动化)第二版:十五、使用 PDF 和 WORD 文档
Python 自动化指南(繁琐工作自动化)第二版:十五、使用 PDF 和 WORD 文档
55 1
|
4月前
|
数据安全/隐私保护 Python
Python办公自动化【Word转换PDF、PDF读取内容、PDF合并文件、PDF拆分文件、PDF加密文件、PPT基本操作-增加幻灯片、增加内容】(六)-全面详解(学习总结---从入门到深化)(下)
Python办公自动化【Word转换PDF、PDF读取内容、PDF合并文件、PDF拆分文件、PDF加密文件、PPT基本操作-增加幻灯片、增加内容】(六)-全面详解(学习总结---从入门到深化)
36 1
|
4月前
|
数据安全/隐私保护 Python Windows
Python办公自动化【Word转换PDF、PDF读取内容、PDF合并文件、PDF拆分文件、PDF加密文件、PPT基本操作-增加幻灯片、增加内容】(六)-全面详解(学习总结---从入门到深化)(上)
Python办公自动化【Word转换PDF、PDF读取内容、PDF合并文件、PDF拆分文件、PDF加密文件、PPT基本操作-增加幻灯片、增加内容】(六)-全面详解(学习总结---从入门到深化)
57 0