Como Editar Markdown em C#
A biblioteca
Aspose.HTML for .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:
- Abra ou crie Markdown.
- Parse Markdown para obter uma árvore de sintaxe. Edite a árvore de sintaxe Markdown usando as classes e métodos nos namespaces acima.
- Salvar MD ou converter MD para o formato de arquivo necessário.
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:
- Especifique o caminho para o arquivo MD de origem e use o MarkdownParser() para inicializar uma nova instância da classe MarkdownParser.
- Chame o método ParseFile() para analisar Markdown e obter uma árvore de sintaxe .
- Use a propriedade SyntaxFactory para obter uma fábrica de sintaxe para criar novos elementos.
- Crie um novo parágrafo usando o construtor Paragraph(). Crie e adicione conteúdo de texto para um novo parágrafo.
- Use o método InsertBefore() para adicionar o parágrafo antes do primeiro elemento da sintaxe árvore.
- 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
A Biblioteca Aspose.HTML for .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.
Visite nossa documentação para saber mais sobre como usar o Aspose.HTML for .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.
Você pode editar documentos MD em qualquer sistema operacional, esteja usando Windows, Mac OS, Linux, Android ou iOS.
Oferecemos suporte a alguns formatos de arquivo que você pode editar em C#, incluindo HTML, MHTML e Markdown.
Introdução à API Aspose.HTML for .NET
Você pode usar várias maneiras de instalar a biblioteca Aspose.HTML for .NET em seu sistema:
- Instale um Pacote NuGet usando a GUI do NuGet Package Manager.
- Instale um pacote NuGet usando o console do gerenciador de pacotes. Você pode usar o seguinte comando
PM> Install-Package Aspose.Html
. - Instale o Aspose.HTML for .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 for .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.
Outros editores suportados
Edite arquivos em outros formatos de arquivo: