经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » Java相关 » Java » 查看文章
Java 将Markdown文件转换为Word和PDF文档 - E-iceblue
来源:cnblogs  作者:E-iceblue  时间:2024/7/1 16:16:27  对本文有异议

Markdown 凭借其简洁易用的特性,成为创建和编辑纯文本文档的常用选择。但某些时候我们需要更加精致的展示效果,例如在专业分享文档或打印成离线使用的纸质版时,就需要将Markdown文件以其他固定的文档格式呈现。通过将 Markdown 转换为 Word 和 PDF 格式,可以得到更多的格式设置,确保跨平台的兼容性,并能够创建出专业的文档。本文将探讨如何使用 Java 将 Markdown 格式转换为 Word 和 PDF 格式。

  • 使用 Java 将 Markdown 文件转换为 Word 文档
  • 使用 Java 将 Markdown 文件转换为 PDF 文件
  • 自定义生成文档的页面设置

本文采用的方法需要 Spire.Doc for Java 库的支持。

 

使用 Java 将 Markdown 文件转换为 Word 文档

Markdown 格式转换为 Word 或 PDF 文档格式,可以通过调用 Document.loadFromFile(String: fileName, FileFormat.Markdown) 方法加载 Markdown 文件,以及使用 Document.saveToFile(String: fileName, FileFormat: fileFormat) 方法保存为 Word 或 PDF 文档来简单完成。需要注意的是,由于 Markdown 文件中的图片是以链接形式存储的,如果希望在转换后保留图片,还需进行额外处理。
Markdown 文件转换为 Word 文档的具体步骤如下:

  1. 导入必要的模块。
  2. 创建 Document 类的实例。
  3. 使用 Document.loadFromFile(String: fileName, FileFormat.Markdown) 方法加载 Markdown 文件。
  4. 通过 Document.saveToFile(String: fileName, FileFormat.Docx) 方法将 Markdown 文件保存为 Word 文档。
  5. 释放资源。

代码示例:

  1. import com.spire.doc.Document;
  2. import com.spire.doc.FileFormat;
  3. public class MarkdownToWord {
  4. public static void main(String[] args) {
  5. // 创建一个 Document 实例
  6. Document doc = new Document();
  7. // 加载 Markdown 文件
  8. doc.loadFromFile("示例.md", FileFormat.Markdown);
  9. // 将 Markdown 文件保存为 Word 文档
  10. doc.saveToFile("output/Markdown转Word.docx", FileFormat.Docx);
  11. doc.dispose();
  12. }
  13. }

原Markdown文件:

 

转换结果:

 

使用 Java 将 Markdown 文件转换为 PDF 文件

只需在 Document.saveToFile() 方法的格式参数中使用 FileFormat.PDF 枚举,即可直接将 Markdown 文件转换为 PDF 文档。
Markdown 文件转换为 PDF 文档的步骤如下:

  1. 导入必要的模块。
  2. 创建 Document 类的实例。
  3. 使用 Document.loadFromFile(String: fileName, FileFormat.Markdown) 方法加载 Markdown 文件。
  4. 利用 Document.saveToFile(String: fileName, FileFormat.PDF) 方法将 Markdown 文件保存为 PDF 文档。
  5. 释放资源。

代码示例:

  1. import com.spire.doc.Document;
  2. import com.spire.doc.FileFormat;
  3. public class MarkdownToPDF {
  4. public static void main(String[] args) {
  5. // 创建一个 Document 实例
  6. Document doc = new Document();
  7. // 加载 Markdown 文件
  8. doc.loadFromFile("示例.md");
  9. // 将 Markdown 文件保存为 PDF 文件
  10. doc.saveToFile("output/Markdown转PDF.pdf", FileFormat.PDF);
  11. doc.dispose();
  12. }
  13. }

转换结果:

 

自定义生成文档的页面设置

除了默认样式转换外,我们还可以在转换前利用 PageSetup 类下的方法进行页面设置,从而控制生成文档的页面边距、页面大小等属性。
自定义生成文档页面设置的步骤如下:

  1. 导入必要的模块。
  2. 创建 Document 类的实例。
  3. 使用 Document.loadFromFile(String: fileName, FileFormat.Markdown) 方法加载 Markdown 文件。
  4. 通过 Document.getSections().get(0) 方法获取第一章节。
  5. 使用 PageSetup 类下的方法设定页面大小、方向及边距。
  6. 通过 Document.saveToFile(String: fileName, FileFormat.PDF) 方法将 Markdown 文件保存为 PDF 文档。
  7. 释放资源。

代码示例:

  1. import com.spire.doc.Document;
  2. import com.spire.doc.FileFormat;
  3. import com.spire.doc.PageSetup;
  4. import com.spire.doc.Section;
  5. import com.spire.doc.documents.MarginsF;
  6. import com.spire.doc.documents.PageOrientation;
  7. import com.spire.doc.documents.PageSize;
  8. public class PageSettingMarkdown {
  9. public static void main(String[] args) {
  10. // 创建一个 Document 实例
  11. Document doc = new Document();
  12. // 加载 Markdown 文件
  13. doc.loadFromFile("示例.md");
  14. // 获取第一个节
  15. Section section = doc.getSections().get(0);
  16. // 设置页面尺寸、方向和边距
  17. PageSetup pageSetup = section.getPageSetup();
  18. pageSetup.setPageSize(PageSize.Letter);
  19. pageSetup.setOrientation(PageOrientation.Landscape);
  20. pageSetup.setMargins(new MarginsF(100, 100, 100, 100));
  21. // 将 Markdown 文件保存为 PDF 文件
  22. doc.saveToFile("output/Markdown转PDF.pdf", FileFormat.PDF);
  23. doc.dispose();
  24. }
  25. }

本文通过分步指南及代码示例展示了如何将 Markdown 文件转换为 Word 文档和 PDF 文件。

欲了解更多文档处理与转换技巧,请前往 Spire.Doc for Java 教程

申请免费License

原文链接:https://www.cnblogs.com/Yesi/p/18278300

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号