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:
- Abrir o crear Markdown.
- Parse Markdown para obtener un árbol de sintaxis. Edite el árbol de sintaxis de Markdown usando las clases y métodos en los espacios de nombres anteriores.
- Guardar MD o convertir MD al formato de archivo requerido.
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:
- Especifique la ruta al archivo MD de origen y use MarkdownParser() constructor para inicializar una nueva instancia de la clase MarkdownParser.
- Llame al método ParseFile() para analizar Markdown y obtener un árbol de sintaxis.
- Use la propiedad SyntaxFactory para obtener una fábrica de sintaxis para crear nuevos elementos.
- Cree un nuevo párrafo utilizando el constructor Paragraph(). Cree y agregue contenido de texto para un nuevo párrafo.
- Use el método InsertBefore() para agregar el párrafo antes del primer elemento de la sintaxis árbol.
- 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
La biblioteca Aspose.HTML for .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.
Visite nuestra documentación para obtener más información sobre el uso de Aspose.HTML for .NET API 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.
Puede editar documentos MD en cualquier sistema operativo, ya sea que use Windows, Mac OS, Linux, Android o iOS.
Admitimos algunos formatos de archivo que puede editar en C#, incluidos HTML, 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:
- Instale un Paquete NuGet mediante la GUI del Administrador de paquetes NuGet.
- Instale un paquete NuGet mediante la Consola del administrador de paquetes. Puede usar el siguiente comando
PM> Install-Package Aspose.Html
. - 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.
Otros editores admitidos
Edite archivos en otros formatos de archivo: