Как создавать списки Markdown на C#
Библиотека
Aspose.HTML for .NET
– это автономное решение, позволяющее анализировать файлы Markdown и управлять ими без использования другого программного обеспечения. Вы можете создать документ Markdown с нуля, открыть из локального файла и управлять им, вставляя новые элементы, удаляя или редактируя содержимое существующих узлов. Markdown поддерживает упорядоченные (нумерованные) и неупорядоченные (маркированные) списки. В этой статье вы узнаете о добавлении списков в Markdown с помощью библиотеки C#.
Используйте
Aspose.Html.Toolkit.Markdown.Syntax
и
Aspose.Html.Toolkit.Markdown.Parser
для обеспечения полного синтаксического анализа Markdown и управления синтаксическим деревом MD на основе спецификации GitHub Flavored Markdown (GFM).
Создать упорядоченный список Markdown на С#
Используя библиотеку C#, вы можете программно редактировать файлы MD – изменять структуру и содержимое документа. Давайте рассмотрим создание нового документа Markdown с нуля и добавление в него упорядоченного списка.
Код С# для создания упорядоченного списка Markdown
// Create the MarkdownSyntaxTree
var md = new MarkdownSyntaxTree(new Configuration());
// Create a Markdown syntax factory
var mdf = md.SyntaxFactory;
// Create a new empty odered list node
var orderedList = mdf.OrderedList();
// Create and add to the odered list a li1 item with the marker “1”
var li1 = mdf.OrderedListItem(1);
orderedList.AppendChild(li1);
// Create a paragraph with text content and add it to the li1 item
var paragraph = mdf.Paragraph();
var heading = mdf.AtxHeading("The first element in the Markdown ordered list is the level 3 heading.", 3);
paragraph.AppendChild(heading);
li1.AppendChild(paragraph);
//Create and add to the odered list a li2 item with the marker “2”
var li2 = mdf.OrderedListItem(2);
orderedList.AppendChild(li2);
// Create a strong emphasis with text content and add it to the li2 item
var bold = mdf.Emphasis(Emphasis.Strong);
bold.AppendChild(mdf.Text("The second item in the Markdown ordered list is in bold."));
li2.AppendChild(bold);
// Add orderedList to MD syntax tree
md.AppendChild(orderedList);
// Prepare a path for MD file saving
string savePath = Path.Combine(OutputDir, "output-odered-list.md");
// Save MD file
md.Save(savePath);
Шаги по созданию упорядоченного списка Markdown на C#
Вот несколько простых шагов для создания упорядоченного списка Markdown:
- Создайте MarkdownSyntaxTree с помощью конструктора MarkdownSyntaxTree().
- Используйте свойство SyntaxFactory, чтобы получить фабрику для создания синтаксического дерева Markdown.
- Создайте новый узел упорядоченного списка с помощью конструктора OderedList() в SyntaxFactory.
- Используйте конструктор OrderedListItem() для создания новых экземпляров класса ListItemSyntaxNode с маркером элемента упорядоченного списка.
- Вызовите метод AppendChild() класса MarkdownSyntaxNode, чтобы добавить упорядоченные элементы списка в узел orderedList.
- После того, как все элементы с их содержимым собраны в один элемент orderedList, добавьте его в синтаксическое дерево документа.
Создать неупорядоченный список Markdown на С#
В следующем примере кода C# показано, как добавить неупорядоченный список в файл MD:
Код С# для добавления неупорядоченного списка в файл MD
// Create the MarkdownSyntaxTree
var md = new MarkdownSyntaxTree(new Configuration());
// Create a Markdown syntax factoty
var mdf = md.SyntaxFactory;
// Create a new empty unodered list node
var unorderedList = mdf.UnorderedList();
// Create and add to the unodered list a li1 element with the marker “-”
var li1 = mdf.UnorderedListItem("-");
unorderedList.AppendChild(li1);
// Create a paragraph with text content and add it to the li1 item:
var paragraph = mdf.Paragraph();
paragraph.AppendChild(mdf.Text("The first item of the unordered Markdown list."));
li1.AppendChild(paragraph);
// Create and add to the unodered list a li2 element with the marker “-”
var li2 = mdf.UnorderedListItem("-");
unorderedList.AppendChild(li2);
// Create a paragraph with text content and add it to the li2 item:
var paragraph2 = mdf.Paragraph();
paragraph2.AppendChild(mdf.Text("The second item of the unordered Markdown list."));
li2.AppendChild(paragraph2);
// Add unorderedList to MD syntax tree
md.AppendChild(unorderedList);
// Prepare a path for MD file saving
string savePath = Path.Combine(OutputDir, "markdown-unodered-list.md");
// Save MD file
md.Save(savePath);
Документация
Чтобы узнать больше об Aspose.HTML API, посетите нашу
документацию.
Markdown – это простой язык разметки, который позволяет форматировать обычный текст. Статья документации
Синтаксис Markdown
содержит информацию об основных элементах Markdown, подробности и примеры синтаксиса Markdown.
Начало работы с Aspose.HTML for .NET API
Вы можете использовать несколько способов установки библиотеки Aspose.HTML for .NET в вашей системе:
- Установите пакет NuGet с помощью графического интерфейса диспетчера пакетов NuGet.
- Установите пакет NuGet с помощью консоли диспетчера пакетов.
- Установите Aspose.HTML for .NET через MSI.
Aspose.HTML for .NET поддерживает синтаксический анализ HTML5, CSS3, SVG и HTML Canvas для создания объектной модели документа (DOM) на основе стандарта WHATWG DOM. Библиотека полностью написана на C# и может использоваться для создания любого типа 32-битного или 64-битного приложения .NET, включая ASP.NET, WCF, WinForms и .NET Core. Прежде чем запускать код примера преобразования .NET, убедитесь, что у вас есть ОС, такая как Microsoft Windows, или совместимая с .NET Framework или .NET Standard, и среда разработки, такая как Microsoft Visual Studio. Дополнительные сведения об установке библиотеки C# и системных требованиях вы найдете в документации Aspose.HTML.
Системные Tребования
Наши API поддерживаются на всех основных платформах и операционных системах. Перед выполнением кода убедитесь, что в вашей системе выполнены следующие предварительные условия.
- Microsoft Windows или совместимая ОС с платформами .NET Framework, .NET Core, Windows Azure, Mono или Xamarin.
- Среда разработки, такая как Microsoft Visual Studio.
- Aspose.HTML for .NET DLL, на который есть ссылка в вашем проекте – установите из NuGet с помощью кнопки «Загрузить» выше.