Cómo crear texto Markdown en C#

Al igual que HTML, Markdown es un lenguaje de marcado. A diferencia de HTML, Markdown pretende ser lo más legible posible. Puede aplicar negrita, cursiva, comillas y tachado al texto. También se pueden usar en combinación para usar varios estilos al mismo tiempo. La biblioteca Aspose.HTML for .NET es una solución independiente que le permite analizar y manipular archivos Markdown sin usar otro software. Puede crear un documento Markdown desde cero, abrirlo desde un archivo local y manipularlo insertando nuevos elementos y eliminando o editando el contenido de los nodos existentes.

La clase MarkdownSyntaxFactory contiene métodos para crear varios elementos Markdown. Para la creación de encabezados, puede usar el método AtxHeading() que crea encabezados Atx Nodo de sintaxis con contenido de texto. Puede utilizar el método Emphasis() que toma como parámetro la enumeración Emphasis valores para poner el texto en negrita o cursiva, y más. Aquí vemos algunos ejemplos en C# de cómo trabajar con texto Markdown.


Texto de Markdown en C#

Con la biblioteca de C#, puede editar archivos MD mediante programación: cambiar la estructura y el contenido del documento. Veamos cómo crear un nuevo documento Markdown desde cero y agregarle textos.

Código C# para crear texto 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);



Pasos para crear texto Markdown en C#

Consideremos algunos pasos simples para crear textos Markdown:

  1. Cree MarkdownSyntaxTree usando el constructor MarkdownSyntaxTree().
  2. Use la propiedad SyntaxFactory para obtener la fábrica para crear el árbol de sintaxis Markdown.
  3. Cree un nuevo encabezado usando AtxHeading(string, int) constructor del MarkdownSyntaxFactory clase. Crea AtxHeadingSyntaxNode con contenido de texto y nivel de título.
  4. Cree un elemento newLineTrivia para una línea vacía después del encabezado. Utilice el constructor NewLineTrivia().
  5. Llame al método Add() de la clase SyntaxNodeCollection para agregar el nodo newLineTrivia al elemento de encabezado.
  6. Después de que todos los nodos de encabezado se hayan recopilado en un elemento, agréguelo al árbol de sintaxis del documento.
  7. Cree un nuevo nodo de párrafo vacío usando el constructor Paragraph() en SyntaxFactory.
  8. Utilice el constructor Text() para crear nodos de texto para el párrafo.
  9. Use el constructor Whitespace() para crear un espacio entre los nodos de texto en el párrafo.
  10. Llame al método AppendChild() de la clase MarkdownSyntaxNode para agregar nodos de texto y espacios en blanco en el párrafo.
  11. Después de que todos los nodos de párrafo se hayan recopilado en un elemento, agréguelo al árbol de sintaxis del documento. Llame al método AppendChild() de la clase MarkdownSyntaxNode.

Crear cotización en bloque de Markdown en C#

El siguiente ejemplo de código C# muestra cómo crear una cita en bloque de Markdown.

Código C# para agregar cotización en bloque de 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);

Documentación

Para obtener más información sobre la API de Aspose.HTML, visite nuestra guía documentación. Markdown es un lenguaje de marcado simple que le permite formatear texto sin formato. El artículo de documentación Sintaxis de Markdown proporciona información sobre los elementos principales de Markdown, detalles y ejemplos de la sintaxis de Markdown.


FAQ

1. ¿Cómo puedo crear, analizar y editar Markdown en C#?

La biblioteca Aspose.HTML for .NET es una solución independiente para trabajar con documentos Markdown que no depende de otro software. Instale nuestra biblioteca de C#, agregue la referencia de la biblioteca a su proyecto de C# y trabaje mediante programación con documentos de Markdown.

2. ¿Por qué Markdown es tan popular?

Markdown es muy popular entre escritores, desarrolladores y creadores de contenido debido a su versatilidad. Sus ventajas incluyen sintaxis fácil de aprender y usar, portabilidad, flexibilidad, legibilidad y facilidad de uso. Markdown es simple e intuitivo y se puede convertir a HTML, PDF u otros formatos.

3. ¿Puedo trabajar con archivos Markdown en Linux, Mac OS, Android o iOS?

Puede trabajar con documentos de Markdown en cualquier sistema operativo, ya sea que use Windows, Mac OS, Linux, Android o iOS.

4. ¿Qué formatos de archivo se pueden procesar con la biblioteca Aspose.HTML C#?

Admitimos varios formatos de archivo que puede crear, abrir, analizar, editar, guardar o convertir en C#. Estos son los formatos HTML, XHTML, MHTML y Markdown.



Introducción a la API Aspose.HTML for .NET

Puede usar varias formas de instalar la biblioteca Aspose.HTML for .NET en su sistema:

  1. Instale un Paquete NuGet mediante la GUI del Administrador de paquetes NuGet.
  2. Instale un paquete NuGet mediante la Consola del administrador de paquetes. Puede usar el siguiente comando PM> Install-Package Aspose.Html.
  3. Instale Aspose.HTML for .NET a través de MSI.

Esta biblioteca admite el análisis de HTML5, CSS3, SVG y HTML Canvas para construir un modelo de objeto de documento (DOM) basado en el estándar WHATWG DOM. Aspose.HTML for .NET está escrito completamente en C# y se puede usar para crear cualquier tipo de aplicación .NET de 32 o 64 bits, incluidos ASP.NET, WCF, WinForms y .NET Core. Antes de ejecutar el código de ejemplo de conversión de .NET, asegúrese de tener un sistema operativo como Microsoft Windows o compatible con .NET Framework o .NET Standard, y el entorno de desarrollo como Microsoft Visual Studio. Para obtener más detalles sobre la instalación de la biblioteca de C# y los requisitos del sistema, consulte Documentación de Aspose.HTML.


Requisitos del sistema

Nuestras API son compatibles con todas las principales plataformas y sistemas operativos. Antes de ejecutar el código, asegúrese de tener los siguientes requisitos previos en su sistema.

  • Microsoft Windows o un sistema operativo compatible con las plataformas .NET Framework, .NET Core, Windows Azure, Mono o Xamarin.
  • Entorno de desarrollo como Microsoft Visual Studio.
  • Aspose.HTML for .NET DLL a la que se hace referencia en su proyecto – Instale desde NuGet usando el botón Descargar de arriba.