MarkdownDisplayView - представление для отображения Markdown с поддержкой стриминга
MarkdownDisplayView - мощный компонент рендеринга Markdown для iOS, созданный на основе TextKit 2, обеспечивает плавную работу рендеринга и широкие возможности настройки. Он также позволяет осуществлять потоковый рендеринг Markdown формата в сценариях чатов с использованием ИИ (как в приложениях ChatGPT или Claude).
Фичи:
• Высокопроизводительный рендеринг — на основе TextKit 2, поддерживает асинхронный рендеринг, инкрементальные обновления, потоковый рендеринг и т. д. Мгновенная загрузка со сверхбыстрым рендерингом первого экрана.
• Низкое использование ЦП — потоковый режим поддерживает рендеринг вложенных стилей с пиковой загрузкой ЦП < 56% на симуляторе iPhone 17 Pro, в среднем всего 30%.
• Полная поддержка Markdown — формулы протокола LaTeX, заголовки, списки, таблицы, блоки кода (с горизонтальной прокруткой), цитаты, изображения и многое другое.
• Подсветка синтаксиса — поддерживает подсветку синтаксиса для более чем 20 языков программирования (Swift, Python, JavaScript и др.).
• Автоматическое оглавление — автоматически извлекает заголовки для создания интерактивного оглавления.
• Широкие возможности настройки — Комплексная конфигурация шрифтов, цветов, отступов и т. д.
• Пользовательские расширения — Поддержка пользовательского анализа синтаксиса и рендеринга блоков кода (например, диаграмм Mermaid).
• Колбеки событий — Нажатия на ссылки, нажатия на изображения, навигация по оглавлению.
• Нативная iOS-версия — Создано с использованием UIKit и TextKit 2 для превосходной производительности.
• Темный режим — Встроенные настройки светлой и темной тем.
• Тактильная обратная связь — Поддержка синхронизированной тактильной обратной связи во время потоковой передачи для улучшения взаимодействия.
MarkdownDisplayView на GitHub: https://github.com/zjc19891106/MarkdownDisplayView
Платформа: iOS
⭐️: 174
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
Post #4218
424
