RichTextKit 是一个 Swift SDK,它允许您在 Swift
& SwiftUI
中使用跨平台的 RichTextEditor
编辑富文本。
RichTextEditor
支持文本样式(粗体、斜体、下划线等)、字体、字号、颜色、文本对齐方式、图像附件等等。 它由 RichTextView
驱动,该视图桥接了 UITextView
& NSTextView
,并添加了额外的、平台无关的 API,使这两个视图的行为更加相似。
如果您只想查看富文本内容,可以使用 RichTextViewer
SwiftUI 视图,该视图封装了编辑器并对其应用了只读配置。
RichTextKit 可以使用 Swift Package Manager 安装。
https://github.com/danielsaidi/RichTextKit.git
RichTextKit 具有一个 SwiftUI RichTextEditor
,它接受一个文本绑定和一个 RichTextContext
。
struct MyView: View {
@State
private var text = NSAttributedString(string: "Type here...")
@StateObject
var context = RichTextContext()
var body: some View {
RichTextEditor(text: $text, context: context) {
// You can customize the native text view here
}
.focusedValue(\.richTextContext, context)
}
}
编辑器使用 RichTextCoordinator
来同步编辑器、上下文和平台特定视图之间的更改。 您可以使用上下文来更改字体、颜色、对齐方式等,并观察上下文更改以更新 UI。
如果您只想显示富文本,可以使用 RichTextViewer
。
struct MyView: View {
private var text = NSAttributedString(...)
var body: some View {
RichTextViewer(text: text)
}
}
RichTextKit 提供了 UI 组件、键盘快捷键 & 菜单命令,可在富文本编辑器中使用。
更多信息,请参阅快速入门指南。
在线文档 包含更多信息、文章、代码示例等。
RichTextKit 演示允许您在 iOS & macOS 上探索该库。 要试用它,只需打开并运行 Demo
应用程序。
RichTextKit 也在以下应用程序中使用,所以请务必查看它们以获取灵感。
如果您正在使用 RichTextKit,并且想将您的应用程序添加到此列表中,请随时与我联系。 我很乐意推荐它。
如果您发现此项目和我的其他开源项目有帮助,请考虑支持我的工作。 我在空闲时间管理它们,任何帮助以维持它们的运行都将不胜感激。
您可以在 GitHub Sponsors 上赞助我,联系我以获得付费支持,或者聘请我进行自由职业。
如果您有任何问题或想以任何方式做出贡献,请随时与我联系。
RichTextKit 在 MIT 许可证下可用。 有关更多信息,请参阅 LICENSE 文件。