EyreFree 2017-08-25 16:32
Swift iOS Markdown 工具库 EFMarkdown
回复:4 查看:12361 感兴趣:69 赞:5
一个轻量级的 Markdown 库,可以用来将 Markdown 转为 HTML,也可以用来直接展示 Markdown 对其进行预览。
预览
示例
作者
EyreFree, eyrefree@eyrefree.org
预览
示例
- 利用
git clone命令下载本仓库; - 利用 cd 命令切换到 Example 目录下,执行
pod install命令; - 随后打开
EFMarkdown.xcworkspace编译即可。
git clone git@github.com:EyreFree/EFMarkdown.git; cd EFMarkdown/Example; pod install; open EFMarkdown.xcworkspace
1. 将 Markdown 转为 HTML
你可以利用 EFMarkdown 轻松实现 Markdown 字符串到 HTML 字符串地转换,示例代码如下:
let markdown = "# Hello"
var html = ""
do {
html = try EFMarkdown().markdownToHTML(markdown, options: EFMarkdownOptions.safe)
print(html) // 这里会输出 "<h1>Hello</h1>\n"
} catch let error as NSError {
print ("Error: \(error.domain)")
}
2. 对 Markdown 进行预览
你可以利用 EFMarkdownView 实现对 Markdown 字符串的预览,示例代码如下:
let screenSize = UIScreen.main.bounds
let markView = EFMarkdownView()
markView.frame = CGRect(x: 0, y: 20, width: screenSize.width, height: screenSize.height - 20)
self.view.addSubview(markView)
markView.load(markdown: testMarkdownFileContent(), options: [.default]) {
[weak self] (_, _) in
if let _ = self {
// 可选:你可以通过在此处传入一个百分比来改变字体大小
markView.setFontSize(percent: 128)
printLog("load finish!")
}
}
3. 选项
你可以通过传入不同的选项来控制底层 cmark 对 Markdown 字符串的处理,默认传入的值为 safe。
可选的值有以下这些:
- default
- sourcePos
- hardBreaks
- safe
- noBreaks
- validateUTF8
- smart
- githubPreLang
- liberalHtmlTag
更多关于这些选项的信息,可以参考 cmark。
作者
EyreFree, eyrefree@eyrefree.org
相关开源代码
l415565972 2018-01-03 00:59
谢谢分享
l415565972 2018-01-03 01:05
学习学习
星可可 2018-01-06 17:28
6a2e7e66d6bb41670213d65959d7c4e6.jpg
谢谢分享
星可可 2018-01-06 18:17
谢谢分享