Como Editar Markdown em C#

A biblioteca Aspose.HTML para .NET é uma solução independente que permite editar arquivos Markdown sem usar outro software. Você pode modificar um documento Markdown inserindo novos elementos, removendo ou editando o conteúdo de nós existentes.
O namespace Aspose.Html.Toolkit.Markdown.Syntax contém classes e métodos para manipular uma árvore de sintaxe Markdown com base na especificação GitHub Flavored Markdown (GFM).
O namespace Aspose.Html.Toolkit.Markdown.Parser contém classes e métodos para fornecer análise Markdown completa e renderização.
O namespace Aspose.Html.Toolkit.Markdown.Extensions contém classes e métodos para manipular a árvore de sintaxe Markdown com base em especificações que não fazem parte da especificação GFM.
Qualquer edição de documento que você deseja executar envolve carregar um documento MD, editá-lo e salvá-lo no formato suportado. Pode ser cenários diferentes, mas pode ser feito com algumas etapas obrigatórias:


Como adicionar elemento ao arquivo MD em C#

Usando a biblioteca C#, você pode editar arquivos MD programaticamente - altere a estrutura e o conteúdo do documento. O seguinte exemplo de código C# mostra como adicionar um novo parágrafo a um documento MD:

Código C# para editar arquivos 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);



Etapas para criar e adicionar elemento ao documento MD em C#

Considere as etapas simples para editar o documento MD existente. No documento irá adicionar um novo parágrafo de texto:

  1. Especifique o caminho para o arquivo MD de origem e use o MarkdownParser() para inicializar uma nova instância da classe MarkdownParser.
  2. Chame o método ParseFile() para analisar Markdown e obter uma árvore de sintaxe .
  3. Use a propriedade SyntaxFactory para obter uma fábrica de sintaxe para criar novos elementos.
  4. Crie um novo parágrafo usando o construtor Paragraph(). Crie e adicione conteúdo de texto para um novo parágrafo.
  5. Use o método InsertBefore() para adicionar o parágrafo antes do primeiro elemento da sintaxe árvore.
  6. Salve o arquivo MD editado com o método Save() .

Como editar o cabeçalho Markdown em C#

Vejamos como editar o primeiro elemento no arquivo MD ( document.md ). O primeiro elemento do arquivo é um cabeçalho, nível 3. O arquivo editado você encontra seguindo o link - output-edit-header.md

Código C# para editar arquivos 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);  



Documentação

Para saber mais sobre a API Aspose.HTML, visite nosso guia de documentação. Você pode baixar os exemplos do repositório GitHub. Eles são de código aberto e podem ser usados ​​livremente em seus próprios aplicativos.

O artigo de documentação Sintaxe Markdown fornece informações sobre os principais elementos Markdown, detalhes e exemplos da sintaxe Markdown.

Markdown é uma linguagem de marcação simples que permite formatar texto simples. Os arquivos MD usam a linguagem Markdown que foi proposta e desenvolvida por John Gruber. John Gruber projetou a sintaxe de formatação do Markdown com o objetivo de torná-la o mais legível possível. O Markdown é frequentemente usado como um formato para documentação e arquivos leia-me, pois permite escrever em um estilo fácil de ler e fácil de escrever. Além disso, os arquivos MD podem ser convertidos em HTML, PDF, XPS ou imagens para aproveitar outros formatos para tarefas específicas.


FAQ

1. Como posso editar MD em C#?

A Biblioteca Aspose.HTML para .NET é uma solução de edição independente MD que não depende de outro software. Instale nossa biblioteca C#, adicione a referência da biblioteca ao seu projeto C# e edite e gerencie documentos MD programaticamente.

2. Onde posso encontrar mais informações sobre a edição de MD?

Visite nossa documentação para saber mais sobre como usar o Aspose.HTML para .NET API para editar MD. Se você tiver dúvidas sobre funcionalidade, problemas encontrados ou precisar de um novo recurso, inicie uma discussão em nosso fórum de suporte gratuito.

3. Posso editar arquivos MD no Linux, Mac OS, Android ou iOS?

Você pode editar documentos MD em qualquer sistema operacional, esteja usando Windows, Mac OS, Linux, Android ou iOS.

4. Quais formatos de arquivo posso editar com a biblioteca Aspose.HTML C#?

Oferecemos suporte a alguns formatos de arquivo que você pode editar em C#, incluindo HTML, MHTML e Markdown.



Introdução à API HTML .NET

Você pode usar várias maneiras de instalar a biblioteca Aspose.HTML para .NET em seu sistema:

  1. Instale um Pacote NuGet usando a GUI do NuGet Package Manager.
  2. Instale um pacote NuGet usando o console do gerenciador de pacotes. Você pode usar o seguinte comando PM> Install-Package Aspose.Html.
  3. Instale o Aspose.HTML para .NET através do MSI.

Esta biblioteca suporta a análise de HTML5, CSS3, SVG e HTML Canvas para construir um Document Object Model (DOM) baseado no WHATWG DOM Standard. Aspose.HTML para .NET foi totalmente escrito em C# e pode ser usado para criar qualquer tipo de aplicativo .NET de 32 ou 64 bits, incluindo ASP.NET, WCF, WinForms e .NET Core. Antes de executar o código de exemplo de conversão .NET, certifique-se de ter um sistema operacional como o Microsoft Windows ou compatível com .NET Framework ou .NET Standard e o ambiente de desenvolvimento como o Microsoft Visual Studio. Para obter mais detalhes sobre a instalação da biblioteca C# e os requisitos do sistema, consulte Documentação do Aspose.HTML.