1. 引入对应的依赖

            <!-- https://mvnrepository.com/artifact/com.vladsch.flexmark/flexmark -->
    <dependency>
    <groupId>com.vladsch.flexmark</groupId>
    <artifactId>flexmark</artifactId>
    <version>0.34.18</version>
    </dependency>
    <!-- https://mvnrepository.com/artifact/com.vladsch.flexmark/flexmark-util -->
    <dependency>
    <groupId>com.vladsch.flexmark</groupId>
    <artifactId>flexmark-util</artifactId>
    <version>0.34.18</version>
    </dependency>
    <!-- https://mvnrepository.com/artifact/com.vladsch.flexmark/flexmark-ext-tables -->
    <dependency>
    <groupId>com.vladsch.flexmark</groupId>
    <artifactId>flexmark-ext-tables</artifactId>
    <version>0.34.18</version>
    </dependency>
  2. 新建工具类

    package com.fdzang.mblog.utils;
    
    import com.vladsch.flexmark.ast.Node;
    import com.vladsch.flexmark.ext.tables.TablesExtension;
    import com.vladsch.flexmark.html.HtmlRenderer;
    import com.vladsch.flexmark.parser.Parser;
    import com.vladsch.flexmark.parser.ParserEmulationProfile;
    import com.vladsch.flexmark.util.options.MutableDataSet; import java.util.Arrays; public class MarkDown2HtmlUtils {
    /**
    * 直接将markdown语义的文本转为html格式输出
    * @param content markdown语义文本
    * @return
    */
    public static String markdown2Html(String content) {
    String html = parse(content);
    return html;
    }
    /**
    * markdown to image
    * @param content markdown contents
    * @return parse html contents
    */
    public static String parse(String content) {
    MutableDataSet options = new MutableDataSet();
    options.setFrom(ParserEmulationProfile.MARKDOWN);
    //enable table parse!
    options.set(Parser.EXTENSIONS, Arrays.asList(TablesExtension.create()));
    Parser parser = Parser.builder(options).build();
    HtmlRenderer renderer = HtmlRenderer.builder(options).build();
    Node document = parser.parse(content);
    return renderer.render(document);
    }
    }

使用flexmark将MarkDown转为HTML的更多相关文章

  1. Laravel框架内实现api文档:markdown转为html

    前后端分离的工作模式于今是非常流行了,前后端工作的对接,就离开不了API文档的辅助. 根据自己以往的工作经历,以及了解的一些资讯,API文档的建立,无非以下几种方式: 1. word文档模板 2. 第 ...

  2. markdown转为pdf文件

    要求: 把.md格式转为.pdf格式,并批量处理,最后将多个pdf文件合并为一个pdf并以文件名作为书签名 解决思路: 1.md格式的markdown文件转为html 为了将 md 格式转换成 htm ...

  3. [原创]使用Pandoc实现Markdown文件转PDF文件

    Markdown写法简单明快,我十分喜欢,以至于我最近都想使用Markdown快速的进行测试说明书的写作,但是考虑到这文档是要进行交接的,一个.md的文件在内部传输还是有不便,于是就想到了能不能把Ma ...

  4. Pandoc将markdown转换为word

    markdown转换为word的指令 直接将markdown转换为word pandoc -f markdown -t docx ./test.md -o test.docx 关于markdown转为 ...

  5. About Markdown -- 进入Markdown园子

    起初也就是打算简单一些Markdown在编辑Blog方面的一些常用操作和注意事项,没想到,一下没刹住,毫无防备地闯进了这个好趣的园子-. 1. 认识 Markdown HTML(HyperText M ...

  6. markdown转html

    今天临时要写接口文档,然后发现部门给的文档是markdown文件的,而接口文档是要html格式的,因此想直接把markdown转为html 这里我使用的是marked 首先初始化一个node项目 np ...

  7. web前端开发教程系列-1 - 前端开发编辑器介绍

    目录: 前言 一. Webstorm 1. 优点 2. 缺点 3. 教程 4. 插件 5. 技巧 二. SublimeText 1. 优点 2. 缺点 3. 教程 4. 插件 5. 技巧 前言 由于很 ...

  8. Swift和Javascript的神奇魔法

    Swift和Javascript的神奇魔法 记录Swift和Javascript如何进行交互 前言 今天在网上看到了一篇介绍Swift和Javascript交互的文章,感觉作者写的很好,因此把作者文章 ...

  9. 开学收好这 17 种工具 App,让你新学期学习更有效率

    开学啦!不管是想勾搭学长还是想讨好学妹,相信同学们对新学期.新同学或者新学校都已经满怀期待了.但是,除了帅气逼人的学长和青春靓丽的学妹,你们可不能忘记上学的首要任务还是学习噢. 那么,为了帮助同学们更 ...

随机推荐

  1. 移动端vue2.5去哪儿项目-常见问题整理

    一.项目中遇到的问题.难点及解决方式 1. 移动端开发中的1px边框问题,由于在不同设备屏幕上,可能会使得1px实际在移动端显示不是1px,怎么解决? 2. 移动端click点击事件,会延迟300ms ...

  2. UI5-技术篇-签字板

    签字板应用是通过创建自定义控件实现的,相关代码如下: 1.HTML <!DOCTYPE HTML> <html> <head> <meta http-equi ...

  3. Qt 接受拖放

    第一步:在构造函数里面 添加拖放支持,相当于总开关(注意这里设置之后是整个窗口可以接受拖放) setAcceptDrops(true); 第二步:重写接受拖放相关的虚函数 void dragEnter ...

  4. ECSHOP(3.0.0升级3.6.0)帮助教程

    说明: 本文档只针对于未做过二开的ECSHOP3.0 用户 1.准备材料 先确保正在使用的ECShop系统版本为ecshop3.0.0并且代码没有经过二次开发,然后下载最新的ECShop3.6.0安装 ...

  5. 数据库操作语句类型(DQL、DML、DDL、DCL)

    数据库操作语句类型(DQL.DML.DDL.DCL)简介 SQL语言共分为四大类:数据查询语言DQL,数据操纵语言DML,数据定义语言DDL,数据控制语言DCL. 1. 数据查询语言DQL 数据查询语 ...

  6. xtarbackup 简单恢复

    xtrbackup Xtrabackup安装 #下载epel源 wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/ep ...

  7. WIN8输入法的问题

    在win8下输入法的添加和删除,使用第三方的软件很难处理好,而且容易造成系统的不稳定.比如搜狗输入法有个输入法管理器. 正确的做法: 1.Win+C打开侧边栏,点击 设置,选择“更改电脑设置” 这个选 ...

  8. react navtagion 头部有返回按钮 标题不居中解决方法

    头部右边写一个隐藏的组件 hederRight:( <View><View> )

  9. Kotlin伴生对象及其字节码内幕详解

    继续面向对象,开撸就是!! 接口: 我们知道对于JDK8之后接口中除了方法的声明之后还可以有default方法的,而在Kotlin中也类似,下面来看一下在Kotlin接口相关的东东: 很显然就是一个方 ...

  10. 圆柱模板行业B2B站点打造MIP推送+熊掌号推送+历史普通推送插件

    最近因为做聚合页面http://zhimo.yuanzhumuban.cc/hotkey/list-951.html  内部站点关键词拥有5万的行业词库,所以这么多搜索词库,如何让百度第一时间抓取呢? ...