探討Java 將Markdown文件轉(zhuǎn)換為Word和PDF文檔
Markdown 憑借其簡潔易用的特性,成為創(chuàng)建和編輯純文本文檔的常用選擇。但某些時(shí)候我們需要更加精致的展示效果,例如在專業(yè)分享文檔或打印成離線使用的紙質(zhì)版時(shí),就需要將Markdown文件以其他固定的文檔格式呈現(xiàn)。通過將 Markdown 轉(zhuǎn)換為 Word 和 PDF 格式,可以得到更多的格式設(shè)置,確??缙脚_(tái)的兼容性,并能夠創(chuàng)建出專業(yè)的文檔。本文將探討如何使用 Java 將 Markdown 格式轉(zhuǎn)換為 Word 和 PDF 格式。
- 使用 Java 將 Markdown 文件轉(zhuǎn)換為 Word 文檔
- 使用 Java 將 Markdown 文件轉(zhuǎn)換為 PDF 文件
- 自定義生成文檔的頁面設(shè)置
本文采用的方法需要 Spire.Doc for Java 庫的支持。
使用 Java 將 Markdown 文件轉(zhuǎn)換為 Word 文檔
Markdown 格式轉(zhuǎn)換為 Word 或 PDF 文檔格式,可以通過調(diào)用 Document.loadFromFile(String: fileName, FileFormat.Markdown) 方法加載 Markdown 文件,以及使用 Document.saveToFile(String: fileName, FileFormat: fileFormat) 方法保存為 Word 或 PDF 文檔來簡單完成。需要注意的是,由于 Markdown 文件中的圖片是以鏈接形式存儲(chǔ)的,如果希望在轉(zhuǎn)換后保留圖片,還需進(jìn)行額外處理。
Markdown 文件轉(zhuǎn)換為 Word 文檔的具體步驟如下:
- 導(dǎo)入必要的模塊。
- 創(chuàng)建 Document 類的實(shí)例。
- 使用 Document.loadFromFile(String: fileName, FileFormat.Markdown) 方法加載 Markdown 文件。
- 通過 Document.saveToFile(String: fileName, FileFormat.Docx) 方法將 Markdown 文件保存為 Word 文檔。
- 釋放資源。
代碼示例:
import com.spire.doc.Document;
import com.spire.doc.FileFormat;
public class MarkdownToWord {
public static void main(String[] args) {
// 創(chuàng)建一個(gè) Document 實(shí)例
Document doc = new Document();
// 加載 Markdown 文件
doc.loadFromFile("示例.md", FileFormat.Markdown);
// 將 Markdown 文件保存為 Word 文檔
doc.saveToFile("output/Markdown轉(zhuǎn)Word.docx", FileFormat.Docx);
doc.dispose();
}
}原Markdown文件:

轉(zhuǎn)換結(jié)果:

使用 Java 將 Markdown 文件轉(zhuǎn)換為 PDF 文件
只需在 Document.saveToFile() 方法的格式參數(shù)中使用 FileFormat.PDF 枚舉,即可直接將 Markdown 文件轉(zhuǎn)換為 PDF 文檔。
Markdown 文件轉(zhuǎn)換為 PDF 文檔的步驟如下:
- 導(dǎo)入必要的模塊。
- 創(chuàng)建 Document 類的實(shí)例。
- 使用 Document.loadFromFile(String: fileName, FileFormat.Markdown) 方法加載 Markdown 文件。
- 利用 Document.saveToFile(String: fileName, FileFormat.PDF) 方法將 Markdown 文件保存為 PDF 文檔。
- 釋放資源。
代碼示例:
import com.spire.doc.Document;
import com.spire.doc.FileFormat;
public class MarkdownToPDF {
public static void main(String[] args) {
// 創(chuàng)建一個(gè) Document 實(shí)例
Document doc = new Document();
// 加載 Markdown 文件
doc.loadFromFile("示例.md");
// 將 Markdown 文件保存為 PDF 文件
doc.saveToFile("output/Markdown轉(zhuǎn)PDF.pdf", FileFormat.PDF);
doc.dispose();
}
}轉(zhuǎn)換結(jié)果:

自定義生成文檔的頁面設(shè)置
除了默認(rèn)樣式轉(zhuǎn)換外,我們還可以在轉(zhuǎn)換前利用 PageSetup 類下的方法進(jìn)行頁面設(shè)置,從而控制生成文檔的頁面邊距、頁面大小等屬性。
自定義生成文檔頁面設(shè)置的步驟如下:
- 導(dǎo)入必要的模塊。
- 創(chuàng)建 Document 類的實(shí)例。
- 使用 Document.loadFromFile(String: fileName, FileFormat.Markdown) 方法加載 Markdown 文件。
- 通過 Document.getSections().get(0) 方法獲取第一章節(jié)。
- 使用 PageSetup 類下的方法設(shè)定頁面大小、方向及邊距。
- 通過 Document.saveToFile(String: fileName, FileFormat.PDF) 方法將 Markdown 文件保存為 PDF 文檔。
- 釋放資源。
代碼示例:
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) {
// 創(chuàng)建一個(gè) Document 實(shí)例
Document doc = new Document();
// 加載 Markdown 文件
doc.loadFromFile("示例.md");
// 獲取第一個(gè)節(jié)
Section section = doc.getSections().get(0);
// 設(shè)置頁面尺寸、方向和邊距
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轉(zhuǎn)PDF.pdf", FileFormat.PDF);
doc.dispose();
}
}本文通過分步指南及代碼示例展示了如何將 Markdown 文件轉(zhuǎn)換為 Word 文檔和 PDF 文件。
欲了解更多文檔處理與轉(zhuǎn)換技巧,請(qǐng)前往 Spire.Doc for Java 教程。
到此這篇關(guān)于Java 將Markdown文件轉(zhuǎn)換為Word和PDF文檔的文章就介紹到這了,更多相關(guān)Java Markdown轉(zhuǎn)Word和PDF文檔內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
深入淺析Random類在高并發(fā)下的缺陷及JUC對(duì)其的優(yōu)化
這篇文章主要介紹了Random類在高并發(fā)下的缺陷及JUC對(duì)其的優(yōu)化 ,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-04-04
Ubuntu 15下安裝Eclipse經(jīng)驗(yàn)分享
這篇文章主要為大家分享了Ubuntu 15下安裝Eclipse經(jīng)驗(yàn),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-12-12
JAVA設(shè)計(jì)模式之訪問者模式原理與用法詳解
這篇文章主要介紹了JAVA設(shè)計(jì)模式之訪問者模式,簡單說明了訪問者模式的原理,并結(jié)合實(shí)例分析了java訪問者模式的定義與用法,需要的朋友可以參考下2017-08-08
SpringBoot實(shí)現(xiàn)評(píng)論回復(fù)功能(數(shù)據(jù)庫設(shè)計(jì))
這篇文章主要介紹了SpringBoot實(shí)現(xiàn)評(píng)論回復(fù)功能(數(shù)據(jù)庫設(shè)計(jì)),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-04-04
java實(shí)現(xiàn)文件讀寫與壓縮實(shí)例
這篇文章主要介紹了java實(shí)現(xiàn)文件讀寫與壓縮實(shí)例,有助于讀者加深對(duì)文件操作的理解,需要的朋友可以參考下2014-07-07
Maven3.9.9環(huán)境安裝配置的實(shí)現(xiàn)步驟
Maven是一個(gè)強(qiáng)大的項(xiàng)目管理和構(gòu)建自動(dòng)化工具,本文主要介紹了Maven3.9.9環(huán)境安裝配置的實(shí)現(xiàn)步驟,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2025-05-05
Java經(jīng)典排序算法之插入排序代碼實(shí)例
這篇文章主要介紹了Java經(jīng)典排序算法之插入排序代碼實(shí)例,插入排序是一種最簡單直觀的排序算法,它的工作原理是通過構(gòu)建有序序列,對(duì)于未排序數(shù)據(jù),在已排序序列中從后向前掃描,找到相應(yīng)位置并插入,需要的朋友可以參考下2023-10-10
解決idea配置Tomcat Deployment沒有artifact選項(xiàng)的問題
今天在配置的時(shí)候tomcat deployment中卻找不到artifact,沒有artifact就不能打成war包上傳到服務(wù)器了,那么怎么解決沒有artifact選項(xiàng)的問題呢,今天通過本文給大家分享idea配置Tomcat Deployment沒有artifact選項(xiàng)的解決方案,一起看看吧2023-10-10

