วิธีสร้าง Markdown Text ใน C#

เช่นเดียวกับ HTML Markdown เป็นภาษามาร์กอัป Markdown มีเป้าหมายเพื่อให้อ่านได้มากที่สุด ซึ่งแตกต่างจาก HTML คุณสามารถใช้ตัวหนา ตัวเอียง เครื่องหมายอัญประกาศ และขีดทับกับข้อความได้ นอกจากนี้ยังสามารถใช้ร่วมกันเพื่อใช้หลายสไตล์ในเวลาเดียวกัน ไลบรารี Aspose.HTML for .NET เป็นโซลูชันแบบสแตนด์อโลนที่ให้คุณแยกวิเคราะห์และจัดการไฟล์ Markdown โดยไม่ต้องใช้ซอฟต์แวร์อื่น คุณสามารถสร้างเอกสาร Markdown ตั้งแต่เริ่มต้น เปิดจากไฟล์ในเครื่อง และจัดการโดยการแทรกองค์ประกอบใหม่ และลบหรือแก้ไขเนื้อหาของโหนดที่มีอยู่

คลาส MarkdownSyntaxFactory มีเมธอดในการสร้างองค์ประกอบ Markdown ต่างๆ สำหรับการสร้างส่วนหัว คุณอาจใช้เมธอด AtxHeading() ที่สร้างโหนดไวยากรณ์ของหัวเรื่อง Atx พร้อมเนื้อหาข้อความ คุณสามารถใช้เมธอด Emphasis() ที่ใช้เป็นพารามิเตอร์สำหรับค่าการแจงนับการเน้นเพื่อทำให้ข้อความเป็นตัวหนาหรือตัวเอียง และอื่นๆ ที่นี่เรามาดูตัวอย่าง C# ของวิธีการทำงานกับข้อความ Markdown


ข้อความ Markdown ใน C#

การใช้ไลบรารี C# คุณสามารถแก้ไขไฟล์ MD โดยทางโปรแกรม – เปลี่ยนโครงสร้างเอกสารและเนื้อหา มาดูการสร้างเอกสาร Markdown ใหม่ตั้งแต่เริ่มต้นและเพิ่มข้อความลงไป

รหัส C# เพื่อสร้างข้อความ Markdown

// Create the MarkdownSyntaxTree
    var md = new MarkdownSyntaxTree(new Configuration());

    // Use the SyntaxFactory property to get the factory for creating the Markdown syntax tree
    var mdf = md.SyntaxFactory;

    var header = mdf.AtxHeading("How to create Markdown Text in C#?", 2);

    // Create and add newLineTrivia element for an empty line after header 
    var newLineTrivia = mdf.NewLineTrivia();
    header.GetTrailingTrivia().Add(newLineTrivia);

    // Add the  headers to the Markdown syntax tree
    md.AppendChild(header);

    // Create an empty paragraph
    var paragraph = mdf.Paragraph();

    // Add texts to the paragraph
    paragraph.AppendChild(mdf.Text("First, add an Aspose.HTML for .NET library reference to your C# project."));

    // Add a space after the first sentence in the paragraph through a special WhiteSpace node
    paragraph.AppendChild(mdf.Whitespace());

    paragraph.AppendChild(mdf.Text("Then create the Markdown Syntax Tree and use the SyntaxFactory property to get a syntax factory to create new elements."));

    // Add the filled paragraph into MD document
    md.AppendChild(paragraph);

    // Prepare a path for MD file saving 
    string savePath = Path.Combine(OutputDir, "markdown-text.md");

    // Save MD file
    md.Save(savePath);



ขั้นตอนในการสร้าง Markdown Text ใน C#

ลองพิจารณาขั้นตอนง่ายๆ สองสามขั้นตอนในการสร้างข้อความ Markdown:

  1. สร้าง MarkdownSyntaxTree โดยใช้ MarkdownSyntaxTree() ตัวสร้าง
  2. ใช้คุณสมบัติ SyntaxFactory เพื่อรับโรงงานสำหรับสร้างแผนผังไวยากรณ์ Markdown
  3. สร้างส่วนหัวใหม่โดยใช้ตัวสร้าง AtxHeading(string, int) ของคลาส MarkdownSyntaxFactory มันสร้าง AtxHeadingSyntaxNode ด้วยเนื้อหาข้อความและระดับหัวเรื่อง
  4. สร้างองค์ประกอบ LineTrivia ใหม่สำหรับบรรทัดว่างหลังส่วนหัว ใช้ตัวสร้าง NewLineTrivia()
  5. เรียกใช้เมธอด Add() ของคลาส SyntaxNodeCollection เพื่อเพิ่มโหนด newLineTrivia ลงในองค์ประกอบส่วนหัว
  6. หลังจากรวบรวมโหนดส่วนหัวทั้งหมดเป็นองค์ประกอบเดียวแล้ว ให้เพิ่มไปยังโครงสร้างไวยากรณ์ของเอกสาร
  7. สร้างโหนดย่อหน้าว่างใหม่โดยใช้ตัวสร้าง Paragraph() ใน SyntaxFactory
  8. ใช้ตัวสร้าง Text() เพื่อสร้างโหนดข้อความสำหรับย่อหน้า
  9. ใช้ตัวสร้าง Whitespace() เพื่อสร้างช่องว่างระหว่างโหนดข้อความในย่อหน้า
  10. เรียกใช้เมธอด AppendChild() ของคลาส MarkdownSyntaxNode เพื่อเพิ่มโหนดข้อความและช่องว่างลงในย่อหน้า
  11. หลังจากรวบรวมโหนดย่อหน้าทั้งหมดเป็นองค์ประกอบเดียวแล้ว ให้เพิ่มไปยังโครงสร้างไวยากรณ์ของเอกสาร เรียกใช้เมธอด AppendChild() ของคลาส MarkdownSyntaxNode

สร้าง Markdown Blockquote ใน C#

ตัวอย่างโค้ด C# ต่อไปนี้แสดงวิธีสร้าง Markdown blockquote

รหัส C# เพื่อเพิ่ม Markdown blockquote

// Create the MarkdownSyntaxTree
    var markdown = new MarkdownSyntaxTree(new Configuration());

    // Create a Markdown syntax factory
    var mdf = markdown.SyntaxFactory;

    // Create a blockQuote object
    var blockQuote = mdf.BlockQuote();

    // Add a leading trivia token blockquote
    blockQuote.GetLinesLeadingTrivia().Add(mdf.Token(SourceText.From("> ")));

    // Create a paragraph with text content 
    var paragraph = mdf.Paragraph();
    paragraph.AppendChild(mdf.Text("For blockquote creation, you should put a sign `>` before the first line of a hard-wrapped paragraph.."));

    // Add paragraph into blockQuote
    blockQuote.AppendChild(paragraph);

    // Add blockQuote object into MD document
    markdown.AppendChild(blockQuote);

    // Prepare a path for MD file saving 
    string savePath = Path.Combine(OutputDir, "markdown-blockquote.md");

    // Save MD file
    markdown.Save(savePath);

เอกสาร

หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับ Aspose.HTML API โปรดไปที่คู่มือ เอกสาร ของเรา Markdown เป็นภาษามาร์กอัปอย่างง่ายที่ให้คุณจัดรูปแบบข้อความธรรมดาได้ บทความเอกสาร Markdown Syntax ให้ข้อมูลเกี่ยวกับองค์ประกอบหลักของ Markdown รายละเอียดและตัวอย่างของไวยากรณ์ Markdown


ติดตั้ง Aspose.HTML for .NET

ติดตั้ง Aspose.HTML for .NET จาก NuGet ด้วย .NET CLI:

dotnet add package Aspose.HTML

คุณยังสามารถใช้หน้าต่าง NuGet Package Manager หรือเรียกใช้ Install-Package Aspose.HTML ใน Package Manager Console ได้ ดูรายละเอียดการตั้งค่าใน คู่มือการติดตั้ง หรือขอ ใบอนุญาตชั่วคราว เพื่อประเมิน API โดยไม่มีข้อจำกัดของเวอร์ชันทดลอง

ความต้องการของระบบ

API ของเรารองรับบนแพลตฟอร์มและระบบปฏิบัติการหลักทั้งหมด ก่อนดำเนินการโค้ด โปรดตรวจสอบให้แน่ใจว่าคุณมีข้อกำหนดเบื้องต้นต่อไปนี้ในระบบของคุณ

  • Microsoft Windows หรือระบบปฏิบัติการที่เข้ากันได้กับ .NET Framework, .NET Core, Windows Azure, Mono หรือ Xamarin Platforms
  • สภาพแวดล้อมการพัฒนาเช่น Microsoft Visual Studio
  • Aspose.HTML for .NET DLL ที่อ้างอิงในโครงการของคุณ – ติดตั้งจาก NuGet โดยใช้ปุ่มดาวน์โหลดด้านบน