Aspose.Words Markdown-filprocessorn för .NET

Den **Aspose.Words Markdown File Processor för .NET ** gör det möjligt för utvecklare att skapa, ladda, redigera och spara markdown-dokument programmässigt med samma bekanta objektmodell som Aspose.

Installation och installation

  • Installera NuGet-paketet Aspose.Words.
  • Använda din licens ( Mätlicensiering ).
  • Lägg till den Aspose.Words Namespace till ditt projekt.
  • För rammål och paketinställning, se Installationsguide .

Stödda plattformar: Windows, Linux, macOS, mobil OS med .NET Framework, .Net Core/5/6+, eller Mono.IDEs: Visual Studio 2010–2022, Xamarin, MonoDevelop.

Snabbstart: Skapa en Markdown-fil

var doc = new Document();
var builder = new DocumentBuilder(doc);

// Insert a horizontal rule (renders as '-----' in Markdown)
builder.InsertHorizontalRule();

doc.Save("Output.md");

Funktioner och funktionalitet

Dokument skapas

  • Generera nya .md Filen är dynamisk.
  • Ange rubriker, stycken, listor, tabeller och metadata.
  • Ställ in egenskaper på dokumentnivå som titel, författare och taggar.

Dokument Laddning

  • Laddning som finns .md filer från skivor, strömmar eller strängar.
  • Håller strukturen: rubriker, tabeller, listor och inline formatering.
  • Håller kod blocks, metadata och referensstil länkar.

DOM (Document Object Model) är ett dokumentobjekt)

  • Tillgång och manipulering:

  • Paragraphs & Runs (bold, italiensk, strikethrough, inline kod)

  • Hedningar (H1–H6)

  • Lister (beställda / oreglerade, nötade)

  • Tabeller, rötter och celler

  • Kodblock och InlineCode knappar

  • Links & Images (med alttext, titlar och URL-adresser)

Text och inline formatering

  • Applicera Markdown syntax via Run attribut.
  • Försöker vara modig (**), Den italienska (*), och strikt (~~), och inline kod (```).
  • Hantera formatering över paragrafer och listor på ett tillförlitligt sätt.

Headings och sektioner

  • Programmässigt justera ledningsnivåer.
  • Omorganisera sektioner för TOC-generation.
  • Split eller fusera headingbaserade block.

Lista och Nested listor

  • Det är beställt (1., 2.) eller om de är förknippade med (-, *) och listor.
  • Konvertera paragrafer till listobjekt.
  • Ange, ta bort eller omvandla listtyper dynamiskt.

Tabell

  • Skapa och manipulera GitHub-flavorade Markdown tabeller.
  • Ange rader/kolumner, fusion celler och redigera innehåll.
  • Multiline cellsupport med bevarad formatering.

Bilder och länkar

  • Lägga till eller uppdatera bildreferenser (![alt](url "title")).
  • Innehåller hyperlänkar ([text](url "title")).
  • Stödjer inline och referensstil länk syntax.

Kod Blocker

  • Ange fängslade kodblock med språktaggar (`csharp).
  • Hantera inline-kodspänningar med självflykt.
  • Anpassa hängstilar (backticks eller tildes).

Metadata och Front-Matter

  • Läs/skriv YAML eller TOML frontmatter.
  • Håll metadata för statiska platsgeneratorer (Hugo, Jekyll, etc.).

Spara och exportera

  • Spara tillbaka till .md Med alternativen:

  • Bevara vitt utrymme och kommentarer.

  • Normalisera indentation och linjeändningar.

  • Strypa eller uppdatera metadata med callbacks.

Avancerade exempel

Redigera befintlig markdown

var doc = new Document("Quotes.md");
var builder = new DocumentBuilder(doc);

builder.MoveToDocumentEnd();
builder.ParagraphFormat.ClearFormatting();
builder.Writeln("\n");

// Insert inline code with backticks
var inlineCodeStyle = doc.Styles.Add(StyleType.Character, "InlineCode.3");
builder.Font.Style = inlineCodeStyle;
builder.Writeln("Produced by Aspose.Words Markdown Processor.");

doc.Save("UpdatedQuotes.md");

Inkludera kod Block

var builder = new DocumentBuilder(new Document());
builder.Writeln("```csharp");
builder.Writeln("Console.WriteLine(\"Hello Markdown\");");
builder.Writeln("```");

Bästa praxis

  • Använd DOM APIs istället för regex för transformationer.
  • Centralisera metadata i frontmatter för generatorkompatibilitet.
  • Återanvända dokumentobjekt för batchuppdateringar.
  • kedjeförändringar för att minimera minnesanvändning.
  • Pre-värm APIs i servermiljöer för att minska första samtal latency.
  • Spåra användningen av licens i CI/CD-rör.

Vanliga användningsfall

  • Automatisering ** Läs generationen**.
  • Bygga kunskap bas artiklar dynamiskt.
  • Konvertera strukturerade data till Markdown Docs.
  • Att upprätthålla stor dokumentation sätter sig programmatiskt.
  • Förbereda Markdown för statiska platsgeneratorer.

FAQ

**Vilka Markdown-funktioner stöds?**Headings, listor, tabeller, bilder, länkar, inlineformatering, kodblock och frontmatter.

**Kan jag konvertera Markdown till andra format?**Ja, laddning .md och spara i DOCX, PDF eller HTML med hjälp av Aspose.Words.

**Är frontmatten bevarad?**Ja ja. YAML och TOML front-matter avsnitt läsas/skrivs.

**stöder det referensstil länkar?**Ja. Både inline och referensstil länkar stöds.

**Är det trådsäker?**Ja, så länge varje tråd använder sin egen dokumentinstans.

 Svenska