Cómo editar Markdown en C#

La biblioteca Aspose.HTML for .NET es una solución independiente que le permite editar archivos Markdown sin usar otro software. Puede modificar un documento Markdown insertando nuevos elementos, eliminando o editando el contenido de los nodos existentes.
El espacio de nombres Aspose.Html.Toolkit.Markdown.Syntax contiene clases y métodos para manipular un árbol de sintaxis Markdown basado en en GitHub Flavored Markdown (GFM) Especificación.
El espacio de nombres Aspose.Html.Toolkit.Markdown.Parser contiene clases y métodos para proporcionar un análisis completo de Markdown y renderizado.
El espacio de nombres Aspose.Html.Toolkit.Markdown.Extensions contiene clases y métodos para manipular el árbol de sintaxis de Markdown basado en sobre especificaciones que no forman parte de la especificación GFM.
Cualquier edición de documento que desee realizar implica cargar un documento MD, editarlo y guardarlo en el formato admitido. Puede haber diferentes escenarios, pero se puede hacer con algunos pasos requeridos:


Cómo agregar un elemento a un archivo MD en C#

Con la biblioteca de C#, puede editar archivos MD mediante programación: cambiar la estructura y el contenido del documento. El siguiente ejemplo de código C# muestra cómo agregar un nuevo párrafo a un documento MD:

Código C# para editar archivos MD

    // Specify the path to the source MD file
    var input = @"C:\temp\document.md";

    // Create a MarkdownParser object
    var parser = new MarkdownParser();

    // Parse the MD document and get a syntax tree
    var syntaxTree = parser.ParseFile(input);

    // Get a SyntaxFactory to create new elements 
    var syntaxFactory = syntaxTree.SyntaxFactory;

    // Create a new paragraph 
    var paragraphSyntaxNode = syntaxFactory.Paragraph();

    // Create and add newLineTrivia element for an empty line after paragraph 
    var newLineTrivia = syntaxFactory.NewLineTrivia();
    paragraphSyntaxNode.GetTrailingTrivia().Add(newLineTrivia);
            
    // Create text content for the paragraph 
    var textSyntaxNode = syntaxFactory.Text("New paragraph text.");
    paragraphSyntaxNode.AppendChild(textSyntaxNode);

    // Add the paragraph before the first element of the syntax tree
    syntaxTree.InsertBefore(paragraphSyntaxNode, syntaxTree.FirstChild);

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

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



Pasos para crear y agregar elementos al documento MD en C#

Considere pasos simples para editar un documento MD existente. En el documento se añadirá un nuevo párrafo de texto:

  1. Especifique la ruta al archivo MD de origen y use MarkdownParser() constructor para inicializar una nueva instancia de la clase MarkdownParser.
  2. Llame al método ParseFile() para analizar Markdown y obtener un árbol de sintaxis.
  3. Use la propiedad SyntaxFactory para obtener una fábrica de sintaxis para crear nuevos elementos.
  4. Cree un nuevo párrafo utilizando el constructor Paragraph(). Cree y agregue contenido de texto para un nuevo párrafo.
  5. Use el método InsertBefore() para agregar el párrafo antes del primer elemento de la sintaxis árbol.
  6. Guarde el archivo MD editado con el método Save().

Cómo editar el encabezado Markdown en C#

Veamos cómo editar el primer elemento en el archivo MD ( document.md ). El primer elemento del archivo es un encabezado, nivel 3. El archivo editado se encuentra siguiendo el enlace – output-edit-header.md

Código C# para editar archivos MD

    // Specify the path to the source MD file
    var input = @"C:\temp\document.md";

    // Create a MarkdownParser object
    var parser = new MarkdownParser();

    // Parse the MD document and get a 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("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, "output-edit-header.md");

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



Documentación

Para obtener más información sobre la API de Aspose.HTML, visite nuestra guía documentación. Puede descargar los ejemplos del repositorio GitHub. Son de código abierto y se pueden utilizar libremente en sus propias aplicaciones.

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.

Markdown es un lenguaje de marcado simple que le permite formatear texto sin formato. Los archivos MD utilizan el lenguaje Markdown propuesto y desarrollado por John Gruber. John Gruber diseñó la sintaxis de formato de Markdown con el objetivo de hacerla lo más legible posible. Markdown se usa a menudo como formato para documentación y archivos Léame, ya que permite escribir en un estilo fácil de leer y escribir. Además, los archivos MD se pueden convertir a HTML, PDF, XPS o imágenes para aprovechar otros formatos para tareas específicas.


FAQ

1. ¿Cómo puedo editar MD en C#?

La biblioteca Aspose.HTML para .NET es una solución de edición MD independiente que no depende de otro software. Instale nuestra biblioteca de C#, agregue la referencia de la biblioteca a su proyecto de C# y edite y administre mediante programación documentos MD.

2. ¿Dónde puedo encontrar más información sobre la edición de MD?

Visite nuestra documentación para obtener más información sobre el uso de Aspose.HTML para la API de .NET para editar MD. Si tiene preguntas sobre la funcionalidad, problemas encontrados o necesita una nueva función, inicie una discusión en nuestro foro de soporte gratuito.

3. ¿Puedo editar archivos MD en Linux, Mac OS, Android o iOS?

Puede editar documentos MD en cualquier sistema operativo, ya sea que use Windows, Mac OS, Linux, Android o iOS.

4. ¿Qué formatos de archivo puedo editar con la biblioteca Aspose.HTML C#?

Admitimos algunos formatos de archivo que puede editar en C#, incluidos HTML, MHTML y Markdown.



Introducción a la API HTML de .NET

Puede usar varias formas de instalar la biblioteca Aspose.HTML para .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 para .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 para .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.