Конвертировать файлы Markdown в файлы Word с помощью бесплатной библиотеки Swift
Открытая библиотека Swift для конвертации файлов Markdown в документы Word DOCX с поддержкой текста, таблиц, изображений, списков, шрифтов и пользовательского форматирования.
Что такое MarkdownToDocx?
В современном быстро меняющемся мире разработки способность беспрепятственно конвертировать контент между форматами является суперспособностью. Markdown стал универсальным языком для написания документации, блога и файлов readme благодаря своей простоте. Конвертация файлов Markdown в формат Microsoft Word никогда не была проще для разработчиков Swift. Библиотека MarkdownToDocx предлагает мощное, гибкое решение для преобразования обычных текстовых документов Markdown в профессионально отформатированные файлы DOCX. Это всеобъемлющее руководство охватывает всё, что необходимо знать об этой важной библиотеке Swift. Помимо базового форматирования, библиотека обрабатывает более сложные возможности Markdown. Текст с зачёркиванием отображается с правильным форматированием, блок‑цитаты имеют характерный стиль, а таблицы конвертируются с полным сохранением структуры, включая заголовки и ячейки данных.
MarkdownToDocx — открытая библиотека Swift, которая бесшовно конвертирует документы Markdown в формат Microsoft Word DOCX. Построенная на парсере MarkdownToDocx от Apple и использующая ZIPFoundation для создания архивов, эта библиотека заполняет пробел между простым форматированием текста и профессиональной генерацией документов. Библиотека выделяется своей простотой, предоставляя при этом расширенные возможности настройки для разработчиков, которым нужен детальный контроль над стилем документа. Независимо от того, создаёте ли вы приложение для заметок, генератор документации или систему управления контентом, MarkdownToDocx предоставляет необходимые инструменты.
Начало работы с MarkdownToDocx
Рекомендуемый способ установить MarkdownToDocx — использовать GitHub. Пожалуйста, выполните следующую команду для плавной установки.
Установить MarkdownToDocx через GitHub
$ go get https://github.com/riyadshauk/markdown-docx-swift.git Добавление MarkdownToDocx в ваш проект занимает всего несколько шагов. Откройте файл Package.swift и добавьте зависимость:
Добавьте следующую зависимость в аргумент Dependencies
dependencies: [
.package(url: "https://github.com/riyadshauk/markdown-docx-swift.git", from: "1.0.0")
]
Конвертация файлов Markdown в DOCX с помощью Swift
Открытая библиотека MarkdownToDocx включает поддержку загрузки и конвертации файлов markdown в файлы Word DOCX с помощью команд Swift. Вы также можете конвертировать файлы Markdown напрямую, не загружая их в память сначала. Этот подход более эффективен для больших файлов, поскольку не требует предварительной загрузки всего файла в строку. Ниже приведён простой пример, демонстрирующий, как разработчики могут конвертировать файл markdown в файл Word DOCX с использованием команд Swift.
Как конвертировать файлы Markdown в DOCX с помощью библиотеки Swift?
import MarkdownToDocx
let inputURL = FileManager.default.urls(
for: .documentDirectory,
in: .userDomainMask
)[0].appendingPathComponent("input.md")
let outputURL = FileManager.default.urls(
for: .documentDirectory,
in: .userDomainMask
)[0].appendingPathComponent("output.docx")
do {
let converter = MarkdownToDocxConverter()
let docxData = try converter.convert(markdownFile: inputURL)
try docxData.write(to: outputURL)
print("File converted successfully!")
} catch {
print("Conversion error: \(error)")
}
Поддержка форматирования текста
Библиотека MarkdownToDocx обрабатывает все основные варианты форматирования текста. Жирный, курсивный текст и зачёркивание полностью поддерживаются. Встроенные блоки кода также правильно отображаются, сохраняя моноширинное форматирование, отличающее код от обычного текста. Приведённый ниже простой пример кода демонстрирует, насколько легко конвертировать отформатированный текст. Конвертер автоматически распознает синтаксис Markdown и применяет соответствующее форматирование в результирующий файл DOCX.
Как конвертировать отформатированный текст в Word DOCX через библиотеку Swift?
let markdown = """
This is **bold text** and this is *italic text*.
You can also use ~~strikethrough~~ formatting.
Here's some `inline code` in the middle of a sentence.
"""
let converter = MarkdownToDocxConverter()
let docxData = try converter.convert(markdown: markdown)
try docxData.write(to: outputURL)
Конвертировать вложенные списки Markdown с помощью библиотеки Swift
Открытая библиотека MarkdownToDocx предоставляет полную поддержку обработки вложенных маркированных и нумерованных списков в файлах Markdown внутри приложений Swift. Как маркированные, так и нумерованные списки работают безупречно. Библиотека корректно обрабатывает вложенные списки, сохраняя правильные отступы и схемы нумерации. Свойство отступа в конфигурации ListStyles позволяет настроить позицию вложенных элементов, гарантируя, что списки выглядят точно так, как вам нужно. Ниже простой пример, показывающий, как это сделать.
Как конвертировать вложенные списки Markdown через библиотеку Swift?
let markdown = """
## Shopping List
- Fruits
- Apples
- Bananas
- Oranges
- Vegetables
- Carrots
- Broccoli
## Steps to Follow
1. First step
2. Second step
1. Sub-step one
2. Sub-step two
3. Third step
"""
let converter = MarkdownToDocxConverter()
let docxData = try converter.convert(markdown: markdown)
Отрисовка таблиц Markdown с помощью библиотеки Swift
Поддержка таблиц — одна из выдающихся функций. Библиотека MarkdownToDocx правильно интерпретирует таблицы Markdown и отображает их с корректными границами и форматированием ячеек в приложениях Swift. Таблицы сохраняют свою структуру идеально, с настраиваемыми границами, отступами ячеек и опциями выравнивания текста, доступными через конфигурацию стилей. Приведённый пример демонстрирует, как использовать библиотеку для чтения таблиц Markdown и их отображения с правильными границами и форматированием ячеек.
Как отрисовать таблицы Markdown через библиотеку Swift?
let markdown = """
| Feature | Status | Notes |
|---------|--------|-------|
| Headings | ✅ | All levels supported |
| Lists | ✅ | Nested lists work |
| Tables | ✅ | Full support |
| Images | ✅ | Basic support |
"""
let converter = MarkdownToDocxConverter()
let docxData = try converter.convert(markdown: markdown)
Parse Markdown Documents via Swift API