Як створити текст Markdown на C#

Як і HTML, Markdown є мовою розмітки. На відміну від HTML, Markdown прагне бути максимально читабельним. До тексту можна застосувати жирний шрифт, курсив, лапки та закреслення. Їх також можна використовувати в комбінації для використання кількох стилів одночасно. Бібліотека Aspose.HTML для .NET – це окреме рішення, яке дозволяє аналізувати та маніпулювати файлами Markdown без використання іншого програмного забезпечення. Ви можете створити документ Markdown з нуля, відкрити його з локального файлу та маніпулювати ним, вставляючи нові елементи та видаляючи або редагуючи вміст існуючих вузлів.

Клас MarkdownSyntaxFactory містить методи для створення різних елементів Markdown. Для створення заголовків ви можете використовувати метод AtxHeading() , який створює заголовок з текстовим вмістом. Ви можете використовувати метод Emphasis() , який приймає як параметр значення перерахування Emphasis, щоб зробити текст жирним або курсивом тощо. Тут ми розглянемо кілька прикладів C#, як працювати з текстом Markdown.


Текст Markdown на C#

Використовуючи бібліотеку C#, ви можете програмно редагувати MD-файли – змінювати структуру та вміст документа. Давайте розглянемо створення нового документа Markdown з нуля та додавання до нього тексту.

Код C# для створення тексту Markdown

// Create the MarkdownSyntaxTree
    var md = new MarkdownSyntaxTree(new Configuration());

    // Use the SyntaxFactory property to get the factory for creating the Markdown syntax tree
    var mdf = md.SyntaxFactory;

    var header = mdf.AtxHeading("How to create Markdown Text in C#?", 2);

    // Create and add newLineTrivia element for an empty line after header 
    var newLineTrivia = mdf.NewLineTrivia();
    header.GetTrailingTrivia().Add(newLineTrivia);

    // Add the  headers to the Markdown syntax tree
    md.AppendChild(header);

    // Create an empty paragraph
    var paragraph = mdf.Paragraph();

    // Add texts to the paragraph
    paragraph.AppendChild(mdf.Text("First, add an Aspose.HTML for .NET library reference to your C# project."));

    // Add a space after the first sentence in the paragraph through a special WhiteSpace node
    paragraph.AppendChild(mdf.Whitespace());

    paragraph.AppendChild(mdf.Text("Then create the Markdown Syntax Tree and use the SyntaxFactory property to get a syntax factory to create new elements."));

    // Add the filled paragraph into MD document
    md.AppendChild(paragraph);

    // Prepare a path for MD file saving 
    string savePath = Path.Combine(OutputDir, "markdown-text.md");

    // Save MD file
    md.Save(savePath);



Кроки для створення тексту Markdown на C#

Розглянемо кілька простих кроків для створення текстів Markdown:

  1. Створіть MarkdownSyntaxTree за допомогою конструктора MarkdownSyntaxTree().
  2. Використовуйте властивість SyntaxFactory, , щоб отримати фабрику для створення синтаксичного дерева Markdown.
  3. Створіть новий заголовок за допомогою AtxHeading(string, int) конструктора класу MarkdownSyntaxFactory. Він створює AtxHeadingSyntaxNode з текстовим вмістом і рівнем заголовка.
  4. Створіть елемент newLineTrivia для порожнього рядка після заголовка. Використовуйте конструктор NewLineTrivia().
  5. Викличте метод Add() класу SyntaxNodeCollection, щоб додати вузол newLineTrivia до елемента заголовка.
  6. Після того, як усі вузли заголовків зібрано в один елемент, додайте його до синтаксичного дерева документа.
  7. Створіть новий порожній вузол абзацу за допомогою конструктора Paragraph() у SyntaxFactory.
  8. Використовуйте конструктор Text() , щоб створити текстові вузли для абзацу.
  9. Використовуйте конструктор Whitespace() , щоб створити пробіл між текстовими вузлами в абзаці.
  10. Викличте метод AppendChild() класу MarkdownSyntaxNode, щоб додати текстові вузли та пробіли в абзац.
  11. Після того, як усі вузли абзаців зібрані в один елемент, додайте його до синтаксичного дерева документа. Викличте метод AppendChild() класу MarkdownSyntaxNode.

Створення Markdown Blockquote на C#

У наступному прикладі коду C# показано, як створити цитату в Markdown.

Код C# для додавання цитати в Markdown

// Create the MarkdownSyntaxTree
    var markdown = new MarkdownSyntaxTree(new Configuration());

    // Create a Markdown syntax factory
    var mdf = markdown.SyntaxFactory;

    // Create a blockQuote object
    var blockQuote = mdf.BlockQuote();

    // Add a leading trivia token blockquote
    blockQuote.GetLinesLeadingTrivia().Add(mdf.Token(SourceText.From("> ")));

    // Create a paragraph with text content 
    var paragraph = mdf.Paragraph();
    paragraph.AppendChild(mdf.Text("For blockquote creation, you should put a sign `>` before the first line of a hard-wrapped paragraph.."));

    // Add paragraph into blockQuote
    blockQuote.AppendChild(paragraph);

    // Add blockQuote object into MD document
    markdown.AppendChild(blockQuote);

    // Prepare a path for MD file saving 
    string savePath = Path.Combine(OutputDir, "markdown-blockquote.md");

    // Save MD file
    markdown.Save(savePath);

Документація

Щоб дізнатися більше про API Aspose.HTML, відвідайте наш посібник із документації. Markdown – це проста мова розмітки, яка дозволяє форматувати звичайний текст. Стаття документації Markdown Syntax містить інформацію про основні елементи Markdown, деталі та приклади синтаксису Markdown.


FAQ

1. Як я можу створювати, аналізувати та редагувати Markdown у C#?

Бібліотека Aspose.HTML для .NET – це окреме рішення для роботи з документами Markdown, яке не залежить від іншого програмного забезпечення. Установіть нашу бібліотеку C#, додайте посилання на бібліотеку до свого проекту C# та програмно працюйте з документами Markdown.

2. Чому Markdown такий популярний?

Markdown дуже популярний серед авторів, розробників і творців контенту завдяки своїй універсальності. Його переваги включають легкий у вивченні та використанні синтаксис, портативність, гнучкість, читабельність і зручність використання. Markdown простий та інтуїтивно зрозумілий і може бути конвертований у HTML, PDF або інші формати.

3. Чи можу я працювати з файлами Markdown на Linux, Mac OS, Android або iOS?

Ви можете працювати з документами Markdown у будь-якій операційній системі, незалежно від того, використовуєте ви Windows, Mac OS, Linux, Android або iOS.

4. Які формати файлів можна обробляти за допомогою бібліотеки Aspose.HTML C#?

Ми підтримуємо кілька форматів файлів, які ви можете створювати, відкривати, аналізувати, редагувати, зберігати або конвертувати на C#. Це формати HTML, XHTML, MHTML і Markdown.



Початок роботи з .NET HTML API

Ви можете скористатися кількома способами інсталяції бібліотеки Aspose.HTML для .NET у вашій системі:

  1. Установіть пакет NuGet за допомогою графічного інтерфейсу користувача NuGet Package Manager.
  2. Встановіть пакет NuGet за допомогою консолі диспетчера пакетів. Ви можете використати таку команду PM> Install-Package Aspose.Html.
  3. Установіть Aspose.HTML для .NET через MSI.

Ця бібліотека підтримує аналіз HTML5, CSS3, SVG і HTML Canvas для створення об’єктної моделі документа (DOM) на основі стандарту WHATWG DOM. Aspose.HTML для .NET повністю написаний на C# і може використовуватися для створення будь-якого типу 32-розрядних або 64-розрядних додатків .NET, включаючи ASP.NET, WCF, WinForms і .NET Core. Перш ніж запустити приклад коду перетворення .NET, переконайтеся, що у вас ОС, як-от Microsoft Windows, або сумісна з .NET Framework або .NET Standard, і середовище розробки, як-от Microsoft Visual Studio. Додаткову інформацію про встановлення бібліотеки C# та системні вимоги ви знайдете у документації Aspose.HTML.


Системні вимоги

Наші API підтримуються на всіх основних платформах і операційних системах. Перш ніж виконувати код, переконайтеся, що у вашій системі є такі передумови.

  • Microsoft Windows або сумісна ОС з платформами .NET Framework, .NET Core, Windows Azure, Mono або Xamarin.
  • Середовище розробки, наприклад Microsoft Visual Studio.
  • Aspose.Html для .NET DLL, на який посилається ваш проект – Встановіть із NuGet за допомогою кнопки «Download» вище.