Comment modifier Markdown en C#

La bibliothèque Aspose.HTML pour .NET est une solution autonome qui vous permet de modifier des fichiers Markdown sans utiliser d’autres logiciels. Vous pouvez modifier un document Markdown en insérant de nouveaux éléments, en supprimant ou en modifiant le contenu des nœuds existants.
L’espace de noms Aspose.Html.Toolkit.Markdown.Syntax contient des classes et des méthodes pour manipuler un arbre de syntaxe Markdown basé sur la spécification GitHub Flavored Markdown (GFM).
L’espace de noms Aspose.Html.Toolkit.Markdown.Parser contient des classes et des méthodes pour fournir une analyse et un rendu Markdown complets.
L’espace de noms Aspose.Html.Toolkit.Markdown.Extensions contient des classes et des méthodes pour manipuler l’arbre de syntaxe Markdown en fonction de spécifications qui ne font pas partie de la spécification GFM.
Toute modification de document que vous souhaitez effectuer implique le chargement d’un document MD, sa modification et son enregistrement dans le format pris en charge. Il peut s’agir de différents scénarios, mais cela peut être fait en quelques étapes obligatoires:


Comment ajouter un élément au fichier MD en C#

À l’aide de la bibliothèque C#, vous pouvez modifier par programmation des fichiers MD – modifier la structure et le contenu du document. L’exemple de code C# suivant montre comment ajouter un nouveau paragraphe à un document MD:

Code C# pour éditer les fichiers 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);



Étapes pour créer et ajouter un élément au document MD en C#

Envisagez des étapes simples pour modifier un document MD existant. Dans le document ajoutera un nouveau paragraphe de texte:

  1. Spécifiez le chemin d’accès au fichier MD source et utilisez le constructeur MarkdownParser() pour initialiser une nouvelle instance de la classe MarkdownParser.
  2. Appelez la méthode ParseFile() pour analyser Markdown et obtenir un arbre de syntaxe.
  3. Utilisez la propriété SyntaxFactory pour obtenir une fabrique de syntaxe pour créer de nouveaux éléments.
  4. Créez un nouveau paragraphe à l’aide du constructeur Paragraph(). Créez et ajoutez du contenu textuel pour un nouveau paragraphe.
  5. Utilisez la méthode InsertBefore() pour ajouter le paragraphe avant le premier élément de l’arbre de syntaxe.
  6. Enregistrez le fichier MD édité avec la méthode Save() .

Comment modifier l'en-tête Markdown en C#

Voyons comment éditer le premier élément du fichier MD ( document.md ). Le premier élément du fichier est un en-tête, niveau 3. Le fichier modifié que vous trouverez en suivant le lien – output-edit-header.md

Code C# pour éditer les fichiers 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);



Documentation

Pour en savoir plus sur l’API Aspose.HTML, veuillez consulter notre documentation guide. Vous pouvez télécharger les exemples depuis le dépôt GitHub . Ils sont open source et peuvent être librement utilisés dans vos propres applications.

L’article de documentation Markdown Syntax fournit des informations sur les principaux éléments Markdown, des détails et des exemples de la syntaxe Markdown.

Markdown est un langage de balisage simple qui vous permet de formater du texte brut. Les fichiers MD utilisent le langage Markdown qui a été proposé et développé par John Gruber. John Gruber a conçu la syntaxe de formatage de Markdown dans le but de la rendre aussi lisible que possible. Markdown est souvent utilisé comme format pour la documentation et les fichiers readme car il permet d’écrire dans un style facile à lire et à écrire. De plus, les fichiers MD peuvent être convertis en HTML, PDF, XPS ou images pour tirer parti d’autres formats pour des tâches spécifiques.


FAQ

1. Comment puis-je modifier MD en C#?

La bibliothèque Aspose.HTML pour .NET est une solution d’édition MD autonome qui ne dépend pas d’autres logiciels. Installez notre bibliothèque C#, ajoutez la référence de la bibliothèque à votre projet C# et modifiez et gérez par programmation les documents MD.

2. Où puis-je trouver plus d'informations sur l'édition de MD?

Veuillez consulter notre documentation pour en savoir plus sur l’utilisation de l’API Aspose.HTML pour .NET pour modifier MD. Si vous avez des questions sur les fonctionnalités, si vous rencontrez des problèmes ou si vous avez besoin d’une nouvelle fonctionnalité, veuillez lancer une discussion sur notre forum d’assistance gratuit.

3. Puis-je modifier les fichiers MD sous Linux, Mac OS, Android ou iOS?

Vous pouvez modifier des documents MD sur n’importe quel système d’exploitation, que vous utilisiez Windows, Mac OS, Linux, Android ou iOS.

4. Quels formats de fichiers puis-je modifier avec la bibliothèque Aspose.HTML C#?

Nous prenons en charge quelques formats de fichiers que vous pouvez modifier en C#, notamment HTML, MHTML et Markdown.



Premiers pas avec l'API HTML .NET

Vous pouvez utiliser plusieurs méthodes pour installer la bibliothèque Aspose.HTML pour .NET sur votre système :

  1. Installez un package NuGet à l’aide de l’interface graphique du gestionnaire de packages NuGet.
  2. Installez un package NuGet à l’aide de la console du gestionnaire de packages. Vous pouvez utiliser la commande suivante PM> Install-Package Aspose.Html.
  3. Installez Aspose.HTML pour .NET via MSI.

Cette bibliothèque prend en charge l’analyse de HTML5, CSS3, SVG et HTML Canvas pour construire un modèle d’objet de document (DOM) basé sur la norme WHATWG DOM. Aspose.HTML pour .NET est entièrement écrit en C# et peut être utilisé pour créer tout type d’application .NET 32 bits ou 64 bits, y compris ASP.NET, WCF, WinForms et .NET Core. Avant d’exécuter l’exemple de code de conversion .NET, assurez-vous que vous disposez d’un système d’exploitation tel que Microsoft Windows ou compatible avec .NET Framework ou .NET Standard, et d’un environnement de développement tel que Microsoft Visual Studio. Pour plus de détails sur l’installation de la bibliothèque C# et la configuration système requise, veuillez consulter Aspose.HTML Documentation.