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. 释放资源。

代码示例:

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

原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. 释放资源。

代码示例:

import com.spire.doc.Document;
import com.spire.doc.FileFormat; public class MarkdownToPDF {
public static void main(String[] args) {
// 创建一个 Document 实例
Document doc = new Document(); // 加载 Markdown 文件
doc.loadFromFile("示例.md"); // 将 Markdown 文件保存为 PDF 文件
doc.saveToFile("output/Markdown转PDF.pdf", FileFormat.PDF);
doc.dispose();
}
}

转换结果:

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

除了默认样式转换外,我们还可以在转换前利用 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. 释放资源。

代码示例:

import com.spire.doc.Document;
import com.spire.doc.FileFormat;
import com.spire.doc.PageSetup;
import com.spire.doc.Section;
import com.spire.doc.documents.MarginsF;
import com.spire.doc.documents.PageOrientation;
import com.spire.doc.documents.PageSize; public class PageSettingMarkdown {
public static void main(String[] args) {
// 创建一个 Document 实例
Document doc = new Document(); // 加载 Markdown 文件
doc.loadFromFile("示例.md"); // 获取第一个节
Section section = doc.getSections().get(0); // 设置页面尺寸、方向和边距
PageSetup pageSetup = section.getPageSetup();
pageSetup.setPageSize(PageSize.Letter);
pageSetup.setOrientation(PageOrientation.Landscape);
pageSetup.setMargins(new MarginsF(100, 100, 100, 100)); // 将 Markdown 文件保存为 PDF 文件
doc.saveToFile("output/Markdown转PDF.pdf", FileFormat.PDF);
doc.dispose();
}
}

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

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

申请免费License

Java 将Markdown文件转换为Word和PDF文档的更多相关文章

  1. Aspose.Words操作word生成PDF文档

    Aspose.Words操作word生成PDF文档 using Aspose.Words; using System; using System.Collections.Generic; using ...

  2. ABBYY PDF Transformer+从文件选项中创建PDF文档的教程

    可使用OCR文字识别软件ABBYY PDF Transformer+从Microsoft Word.Microsoft Excel.Microsoft PowerPoint.HTML.RTF.Micr ...

  3. 程序生成word与PDF文档的方法(python)

    程序导出word文档的方法 将web/html内容导出为world文档,再java中有很多解决方案,比如使用Jacob.Apache POI.Java2Word.iText等各种方式,以及使用free ...

  4. Qt 生成word、pdf文档

    需求:将软件处理的结果保存为一个报告文档,文档中包含表格.图片.文字,格式为word的.doc和.pdf.生成word是为了便于用户编辑. 开发环境:qt4.8.4+vs2010 在qt的官网上对于p ...

  5. Java使用Flying Saucer实现HTML代码生成PDF文档

    1.需要的jar包:org.xhtmlrenderer.flying-saucer-pdf-itext5,Maven依赖如下: <dependency> <groupId>or ...

  6. java实现从url路径中下载pdf文档到本地

    package com.cellstrain.icell.util; import java.io.*;import java.net.*; public class DownloadPdf { /* ...

  7. Java实现在线预览Word,Excel,Ppt文档

    效果图:

  8. 使用 VS Code + Markdown 编写 PDF 文档

    背景介绍 作为一个技术人员,基本都需要编写技术相关文档,而且大部分技术人员都应该掌握 markdown 这个技能,使用 markdown 来编写并生成 PDF 文档将会是一个不错的体验,以下就介绍下如 ...

  9. 如何通过Java应用程序压缩PDF文档

    PDF文档是我们日常办公中使用最频繁的文档格式.但因为大多数PDF文档都包含很多页面图像或大量图片,这就导致PDF文档过大,处理起来较为麻烦.PDF文件过大,就会导致传输或者下载的速度变慢,也会增加传 ...

  10. 常用PDF文档开发库

    C++库: 1,PDF类库 PoDoFo   http://podofo.sourceforge.net/  PoDoFo 是一个用来操作 PDF 文件格式的 C++ 类库.它还包含一些小工具用来解析 ...

随机推荐

  1. WPF-dataGrid动态更新

    简介: 问题:在WPF中,使用了ObservableCollection<T>作为dataGrid的数据源,发现更新数据的时候不会触发dataGrid的更新 By MaQaQ 2023-1 ...

  2. 提交项目到git远程仓库

    提交项目到github远程仓库 点击VCS-->Share project on Github 相关信息配置:修改完,点击share 点击add等待完成. 打开浏览器查看,可以发现我们的仓库里出 ...

  3. postgresql建表空间、建库、建模式、建用户的规范

    一.官方概念说明 1.表空间(表空间位置不应该位于数据目录内) 性能优化:您可以将高I/O的表和索引放在高速磁盘上,而将不经常访问的表放在普通的磁盘上. 管理磁盘空间:当数据库存储空间不足时,可以通过 ...

  4. Seata原理浅析

    前言 Seata是阿里开源的分布式事务解决方案,本文将详细介绍 Seata 的事务模式.原理以及使用.了解之前需清楚什么是分布式事务. 一.什么是 Seata Seata 是一款开源的分布式事务解决方 ...

  5. 10分钟了解Flink SQL使用

    Flink 是一个流处理和批处理统一的大数据框架,专门为高吞吐量和低延迟而设计.开发者可以使用SQL进行流批统一处理,大大简化了数据处理的复杂性.本文将介绍Flink SQL的基本原理.使用方法.流批 ...

  6. C语言:顺序存储循环队列#保存文件中单词的最后三个字母

    目录 前言 全局变量和结构体代码 四个任务 ①计算文件中的单词数量 ②保存单词最后三个字母到链表中 ③将链表的内容导出到另一个文件中 ④将新文件的内容打印到屏幕中 @完整代码@ 前言 本博客最终会完成 ...

  7. ansible使用详解

    ansible执行,用户主机配置 免密同一个同一个用户执行命令 1 能免密登录的[root@mcw1 ~]$ ansible 10.0.0.132 -m shell -a "hostname ...

  8. Istio(三):服务网格istio可观察性:Prometheus,Grafana,Zipkin,Kiali

    目录 一.模块概览 二.系统环境 三.可观察性 四.指标 4.1 代理级指标 4.2 服务级指标 4.3 控制平面度量 五.Prometheus 5.1 安装Prometheus 5.2 部署示例应用 ...

  9. 【C#】预处理指令的学习 条件编译

    预处理指令,我的理解是,编译器在编译过程中所做的指令,能根据用户定义的条件选择性的编译代码. 比如在debug下要打印些信息,然而release之后,不能出现debug的信息,这个时候就能用预处理指令 ...

  10. 不使用循环语句用if和else实现循环

    如果不使用循环语句,可以使用递归函数来实现循环的效果.递归函数是指在函数内部调用自身的函数.下面是一个使用递归函数来实现循环的示例: (初学者记得写include,这里是个普通函数,所以我没写) de ...