GMarkdown
August 11, 2025 · View on GitHub
GMarkdown 是一个专为 Swift 开发者设计的强大且多功能的 Markdown 渲染库。基于 swift-markdown 解析器构建,GMarkdown 提供纯原生渲染能力,确保与您的 iOS 应用程序无缝集成和高性能表现。
GMarkdown 目前处于测试阶段。尽管我们已经努力支持不同风格的 Markdown,但仍需要一些代码级别的优化和修改,以使 GMarkdown 架构更加合理。如果时间允许,未来将重新设计部分代码逻辑。
✨ 最新更新
🎉 现已支持 CocoaPods!
GMarkdown 现在可以通过 CocoaPods 轻松集成到您的项目中。只需在您的 Podfile 中添加以下内容:
pod 'GMarkdown'
功能特性
- 纯原生渲染: 享受纯原生渲染带来的优势,确保所有 Markdown 内容都能快速高效地呈现。
- 富文本支持: GMarkdown 支持多种富文本样式,让您的 Markdown 内容看起来专业而精美。
- 图片渲染: 轻松在 Markdown 内容中渲染图片。
- 代码块: 支持语法高亮显示代码,让代码片段更易于展示和阅读。
- 表格: 创建和渲染表格,有效组织您的数据。
- LaTeX 数学公式: 使用 LaTeX 渲染复杂的数学方程式,非常适合学术和科学内容。
- Mermaid 图表: 使用 Mermaid 语法创建精美的流程图、时序图和其他可视化图表。
- HTML 预览: 在 Markdown 文档中无缝预览和渲染 HTML 内容,提供更强的格式化灵活性。
系统要求
GMarkdown 支持 iOS 13+ 并依赖以下框架:
安装
Swift Package Manager(推荐)
GMarkdown 也可通过 Swift Package Manager 获取。要将其包含在您的项目中,请将以下内容添加到您的 Package.swift:
dependencies: [
.package(url: "https://github.com/GIKICoder/GMarkdown.git", from: "0.0.6")
]
CocoaPods
GMarkdown 可通过 CocoaPods 获取。要安装它,只需在您的 Podfile 中添加以下行:
pod 'GMarkdown'
然后运行:
pod install
使用方法
初始化
初始化并将 GMarkdown 视图添加到您的视图层次结构中:
let markdownView = GMarkdownMultiView()
view.addSubview(markdownView)
markdownView.frame = view.bounds
示例
以下是如何从文件加载和渲染 Markdown 内容的完整示例:
func setupMarkdown() async {
guard let filepath = Bundle.main.path(forResource: "markdown", ofType: nil),
let filecontents = try? String(contentsOfFile: filepath, encoding: .utf8) else {
return
}
let chunks = await parseMarkdown(filecontents)
DispatchQueue.main.async { [weak self] in
self?.markdownView.updateMarkdown(chunks)
}
}
func parseMarkdown(_ content: String) async -> [GMarkChunk] {
return await withCheckedContinuation { continuation in
DispatchQueue.global(qos: .userInitiated).async {
let processor = GMarkProcessor()
let chunks = processor.process(markdown: content)
continuation.resume(returning: chunks)
}
}
}
截图展示
许可证
GMarkdown 基于 MIT 许可证发布。详情请参阅 LICENSE。
贡献
欢迎贡献!请提交 Pull Request 或创建 Issue 来帮助改进 GMarkdown。




