Как создать заголовок Markdown на C#
Библиотека
Aspose.HTML for .NET
– это автономное решение, позволяющее анализировать файлы Markdown и управлять ими без использования другого программного обеспечения. Вы можете создать документ Markdown с нуля, открыть из локального файла и управлять им, вставляя новые элементы, удаляя или редактируя содержимое существующих узлов.
Используйте
Aspose.Html.Toolkit.Markdown.Syntax
и
Aspose.Html.Toolkit.Markdown.Parser
для обеспечения полного синтаксического анализа Markdown и управления синтаксическим деревом MD на основе спецификации GitHub Flavored Markdown (GFM).
Как добавить заголовок Markdown на C#
Используя библиотеку C#, вы можете программно редактировать файлы MD – изменять структуру и содержимое документа. Создание элемента заголовка Markdown на C# имеет особенность. Особенность в том, что заголовок нужно собирать из нескольких узлов, таких как текстовые узлы, пробелы между текстовыми узлами и пустая строка после заголовка. Давайте рассмотрим создание нового документа Markdown с нуля и добавление к нему заголовков.
Код C# для редактирования файлов MD
// Create the MarkdownSyntaxTree
var markdown = new MarkdownSyntaxTree(new Configuration());
// Get a SyntaxFactory to create new elements
var mdf = markdown.SyntaxFactory;
// Create headings of the required level
var heading1 = mdf.AtxHeading("Heading 1 level text", 1);
var heading2 = mdf.AtxHeading("Heading 2 level text", 2);
var heading3 = mdf.AtxHeading("Heading 3 level text", 3);
// Create and add newLineTrivia element for an empty line after headings
var newLineTrivia = mdf.NewLineTrivia();
heading1.GetTrailingTrivia().Add(newLineTrivia);
heading2.GetTrailingTrivia().Add(newLineTrivia);
heading3.GetTrailingTrivia().Add(newLineTrivia);
// Add the headers to the Markdown syntax tree
markdown.AppendChild(heading1);
markdown.AppendChild(heading2);
markdown.AppendChild(heading3);
// Prepare a path for MD file saving
string savePath = Path.Combine(OutputDir, "output-headers.md");
// Save MD file
markdown.Save(savePath);
Шаги по созданию заголовка Markdown на C#
Рассмотрим простые шаги по созданию заголовка Markdown:
- Создайте новый заголовок с помощью конструктора AtxHeading(string, int) класса MarkdownSyntaxFactory. Он создает AtxHeadingSyntaxNode с текстовым содержимым и указанным уровнем заголовка.
- Создайте элемент newLineTrivia для пустой строки после заголовка. Используйте конструктор NewLineTrivia().
- Вызовите метод Add() класса SyntaxNodeCollection, чтобы добавить узел newLineTrivia в элемент заголовка.
- После того, как все узлы заголовков собраны в один элемент, добавьте его в синтаксическое дерево документа.
Редактировать заголовок Markdown на С#
В следующем примере кода C# показано, как редактировать заголовок Markdown в существующем документе MD:
Код С# для добавления заголовка Markdown
// Specify the path to the source MD file
var input = "C:/temp/document.md";
// Create a MarkdownParser object
var parser = new MarkdownParser();
// Parse the document and get a Markdown syntax tree
var syntaxTree = parser.ParseFile(input);
// The first element of this document is AtxHeading
var heading = (AtxHeadingSyntaxNode)syntaxTree.FirstChild;
// Accumulate the text content from its elements
var sb = new StringBuilder();
while (heading.FirstChild != null)
{
sb.Append(heading.FirstChild);
// Remove accumulated first element from the tree
heading.RemoveChild(heading.FirstChild);
}
// Get a SyntaxFactory to create new elements
var syntaxFactory = syntaxTree.SyntaxFactory;
// Сreate a text node consisting of new and old text and add it as a child element of AtxHeading
var textSyntaxNode = syntaxFactory.Text("Added some new text! " + sb);
// Add the new element to the document tree
heading.AppendChild(textSyntaxNode);
// Prepare a path for MD file saving
string savePath = Path.Combine(OutputDir, "edit-header.md");
// Save MD file
syntaxTree.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 с помощью кнопки «Загрузить» выше.