# Vue中Html和Markdown互相转换

## 前言

最近想实现的一个功能,就是将系统中的博客进行导出成Markdown格式,后面经过了调研发现有两种方法能够满足需求,一个是Java后台中将HTML转换成Markdown, 然后导出。第二种方式是在客户端将Html转换成Markdown

## 前台处理

### MarkdownToHtml

#### 安装

前台处理Markdown转换成Html,使用的是一款Vue组件 `showdown`:[点我传送](https://github.com/showdownjs/showdown)

前端处理的好处是不需要占用后端的计算资源,因此首选是让客户端做这种处理的事情

首先我们需要安装依赖

```

npm install showdown --save

```

或者使用CDN

```

https://unpkg.com/showdown/dist/showdown.min.js

```

#### Markdown 转成 Html

```

var showdown = require('showdown'),

converter = new showdown.Converter(),

text = '# hello, markdown!',

html = converter.makeHtml(text);

```

### HtmlToMarkdown

#### 安装

前台处理Html转换成Markdown,使用的是一款Vue组件 `turndown`:[点我传送](https://github.com/domchristie/turndown)

首先安装依赖

```

npm install turndown --save

```

或使用CDN加速

```

```

#### 使用

```

// For Node.js

var TurndownService = require('turndown')

var turndownService = new TurndownService()

var markdown = turndownService.turndown('

Hello world!

')

```

## 后端处理

后端处理使用的是 `flexmark-java` :[点我传送](https://github.com/vsch/flexmark-java)

### 引入依赖

```

com.vladsch.flexmark

flexmark-all

${flexmark.version}

```

### MarkdownToHtml

```

/**

* Markdown转Html

* @param markdown

* @return

*/

public static String markdownToHtml(String markdown) {

MutableDataSet options = new MutableDataSet();

Parser parser = Parser.builder(options).build();

HtmlRenderer renderer = HtmlRenderer.builder(options).build();

Node document = parser.parse(markdown);

String html = renderer.render(document);

return html;

}

```

### HtmlToMarkdown

```

/**

* Html 转 Markdown

* @param html

* @return

*/

public static String htmlToMarkdown(String html) {

MutableDataSet options = new MutableDataSet();

String markdown = FlexmarkHtmlConverter.builder(options).build().convert(html);

System.out.println(markdown);

return markdown;

}

```

一键复制

编辑

Web IDE

原始数据

按行查看

历史

vue 转换成 html,Vue/Vue中Html和Markdown互相转换/README.md · cyh90/LearningNotes - Gitee.com...相关推荐

  1. blue html中转换,Vue/Vue中Html和Markdown互相转换/README.md · bluemoon/LearningNotes - Gitee.com...

    # Vue中Html和Markdown互相转换 ## 前言 最近想实现的一个功能,就是将系统中的博客进行导出成Markdown格式,后面经过了调研发现有两种方法能够满足需求,一个是Java后台中将HT ...

  2. vue中将md转成html,Vue/Vue中Html和Markdown互相转换/README.md · 倚栏听风/LearningNotes - Gitee.com...

    # Vue中Html和Markdown互相转换 ## 前言 最近想实现的一个功能,就是将系统中的博客进行导出成Markdown格式,后面经过了调研发现有两种方法能够满足需求,一个是Java后台中将HT ...

  3. html markdown 互相转换,Vue/Vue中Html和Markdown互相转换/README.md · 撒欢大魔王/LearningNotes - Gitee.com...

    # Vue中Html和Markdown互相转换 ## 前言 最近想实现的一个功能,就是将系统中的博客进行导出成Markdown格式,后面经过了调研发现有两种方法能够满足需求,一个是Java后台中将HT ...

  4. int char转换成string java,java中int,char,string三种类型的相互转换

    如何将字串 String 转换成整数 int? int i = Integer.valueOf(my_str).intValue(); int i=Integer.parseInt(str); 如何将 ...

  5. OFD文件怎么转换成图片?这两种方法能够快速转换

    怎么将OFD文件转换成图片呢?OFD文件是我们国家自主研发的一种文件版式格式标准,大家对于这种受用面较小的文件格式见到的次数可能不多,因此也对这种格式的文件不太了解,打开它需要相关的OFD阅读软件才可 ...

  6. ​Excel如何转换成Word文档?教你如何实现转换

    怎么把excel表格转换成word文档呢?对文件的格式转换相信大家都经历过很多次了,很多时候都是我们在工作中的办公需求.最近有看到有很多小伙伴想了解怎么把excel表格转换成word文档,对于这个比较 ...

  7. CAJ文件转换成PDF文件:教你如何实现文件格式转换

    CAJ文件是中国知网常用的一种文献格式,但有时候我们需要将其转换成PDF格式,以方便阅读.打印.分享等用途.本文将教你如何实现CAJ文件转换成PDF文件. 方法一.使用CAJViewer软件 步骤1: ...

  8. 将pdf转换html_pdf文件怎么转换成html网页格式?用什么方法来转换?

    pdf转换成html已经是日常工作很常见的需求了,如果你还在手动转换,不仅耗时间而且又不准确这样我们的效率往往会最低,掌握快速将pdf文件转html网页的巧妙方法可以大大提高我们的工作效率这样我们就可 ...

  9. 输入一个字符,判断其是否为大写字母,如果是,将他转换成小写字母;如果不是,不转换。然后输出最后得到的字符。

    输入一个字符,判断其是否为大写字母,如果是,将他转换成小写字母:如果不是,不转换.然后输出最后得到的字符. 代码如下: 1 #include<stdio.h>2 int main()3 { ...

最新文章

  1. 什么是新IP的四层网络技术
  2. python怎么读文件内容-Python读取文件内容为字符串的方法(多种方法详解)
  3. js实现webSocket客户端
  4. 大爱jQuery,10美女模特有用jQuery/CSS3插入(集成点免费下载)
  5. 23. Spring Boot启动加载数据CommandLineRunner【从零开始学Spring Boot】
  6. vue使用element ui实现下拉列表分页的功能!!!
  7. 微服务+异步工作流+ Serverless,Netflix 决定弃用稳定运行 7 年的旧平台
  8. 实现前后台数据交互(上传/回传单个JSON数据和上传/回传JSON数组)
  9. 我的Android进阶之旅------Android【设置】-【语言和输入法】-【语言】列表中找到相应语言所对应的列表项
  10. minimax算法(井子棋)
  11. MySQL大批量造数据
  12. 抖快齐聚短剧战场,是加重“同质化”还是搅动“视频格局”?
  13. NepCTF2021-Web部分(除画皮)
  14. linux物联网项目,6个开源项目提升物联网开发效率
  15. [附源码]Python计算机毕业设计高校请假管理系统
  16. 洛谷-5149 会议座位
  17. 【PhotoShop】用自己的照片做个好看的星空头像PS
  18. SDL_UpdateTexture+ffmpeg播放YUV数据程序异常崩溃:VM Regions Near 0x113e3d000:MALLOC_LARGE
  19. 如何识别骗子广告联盟,骗子广告联盟常用手段
  20. Automation Anywhere A360 Certified Master RPA Professional Prep + Exam (A2019)认证真题和详细攻略

热门文章

  1. 【JavaScript】关于[object Object]
  2. 解压压缩包报错:tar: invalid tar magic
  3. WebMatrix进阶教程(2):教您如何使用WebMatrix创建第一个网页
  4. C语言的return用法
  5. 基于DDD的现代ASP.NET开发框架--ABP系列文章总目录
  6. 长治计算机专业,长治计算机专业好就业吗?,计算机专业
  7. word中logo如何与文字对齐
  8. E. Pencils and Boxes(划窗+dp+树状数组)
  9. OCR开源库Tesseract汉字识别训练
  10. oracle bug号,《一次Oracle bug的故障排查过程思考》的问题重现解决