SpringBoot集成MD2File實(shí)現(xiàn)Markdown轉(zhuǎn)PDF的示例代碼
Gitee 地址: https://gitee.com/cevin15/MD2File
一、MD2File簡(jiǎn)介
MD2File
實(shí)現(xiàn)了 Markdown 文檔導(dǎo)出為 word
、pdf
、html
等格式文件。
優(yōu)點(diǎn):
- 代碼非常簡(jiǎn)潔,引入 Maven 依賴(lài)之后,通過(guò)一行代碼就可以實(shí)現(xiàn) Markdown 文件的轉(zhuǎn)換。
- 支持大部分 Markdown 的基礎(chǔ)語(yǔ)法(包括表格等)。
缺點(diǎn):
- 暫不支持多級(jí)列表、圖片、下劃線(xiàn)。
- 暫不支持多個(gè)空行,如果需要可以使用全角空格 “ ” 來(lái)實(shí)現(xiàn)。
- 小編親測(cè),2800 字的 Markdown 轉(zhuǎn) PDF 耗時(shí)在 1s 左右,速度沒(méi)有達(dá)到毫秒級(jí)。
二、代碼實(shí)現(xiàn)
2.1 Maven依賴(lài)
<dependency> <groupId>com.youbenzi</groupId> <artifactId>MD2File</artifactId> <version>1.0.2</version> </dependency>
2.2 Java代碼
public static void main(String[] args) { try { // 導(dǎo)出文本 long start = System.currentTimeMillis(); System.out.println("開(kāi)始執(zhí)行。。。"); FileFactory.produce(new File("D:\\test.md"), "D:\\test.docx"); FileFactory.produce(new File("D:\\test.md"), "D:\\test.pdf"); FileFactory.produce(new File("D:\\test.md"), "D:\\test.html"); long end = System.currentTimeMillis(); System.out.println("耗時(shí):" + 1.0 * (end - start) / 1000 + " s"); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (UnsupportedEncodingException e) { throw new RuntimeException(e); } //markdown轉(zhuǎn)html System.out.println(MDUtil.markdown2Html("執(zhí)行結(jié)束")); }
執(zhí)行結(jié)果如下所示:
2.3 轉(zhuǎn)換結(jié)果
轉(zhuǎn)換前:
# 標(biāo)題一 ## 標(biāo)題二 ### 標(biāo)題三 > 引用內(nèi)容測(cè)試 **加粗內(nèi)容測(cè)試** *斜體內(nèi)容測(cè)試* <u>下劃線(xiàn)內(nèi)容測(cè)試</u> 無(wú)序列表測(cè)試: * 無(wú)序列表測(cè)試1 * 無(wú)序列表測(cè)試2 * 無(wú)序列表測(cè)試3 有序列表測(cè)試: 1. 有序列表測(cè)試1 2. 有序列表測(cè)試2 3. 有序列表測(cè)試3 ```java // 代碼塊測(cè)試 public static void main(String[] args) { System.out.println("Hello World."); } ```
轉(zhuǎn)換后:
到此這篇關(guān)于SpringBoot集成MD2File實(shí)現(xiàn)Markdown轉(zhuǎn)PDF的示例代碼的文章就介紹到這了,更多相關(guān)SpringBoot MD2File實(shí)現(xiàn)Markdown轉(zhuǎn)PDF內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
從dubbo源碼分析qos-server端口沖突問(wèn)題及解決
這篇文章主要介紹了從dubbo源碼分析qos-server端口沖突問(wèn)題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-02-02java selenium Selenium IDE介紹及用法
本文主要介紹java selenium Selenium IDE,這里整理了相關(guān)資料和介紹如何安裝 Selenium IDE和使用方法,有需要的小伙伴可以參考下2016-08-08OKHttp3(支持Retrofit)的網(wǎng)絡(luò)數(shù)據(jù)緩存Interceptor攔截器的實(shí)現(xiàn)
本篇文章主要介紹了OKHttp3(支持Retrofit)的網(wǎng)絡(luò)數(shù)據(jù)緩存Interceptor攔截器的實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-12-12springboot接收http請(qǐng)求,解決參數(shù)中+號(hào)變成空格的問(wèn)題
這篇文章主要介紹了springboot接收http請(qǐng)求,解決參數(shù)中+號(hào)變成空格的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-08-08