วิธีการสร้างและใส่ตารางใน PDF ใน .NET

วิธีการสร้างและใส่ตารางใน PDF ใน .NET

บทความนี้แสดงให้เห็นว่าวิธีการสร้างและใส่ตารางในไฟล์ PDF โดยใช้ Aspose.PDF Table Generator สําหรับ .NET ปลั๊กอิน Table generator จะปรับปรุงการสร้างโต๊ะเพื่อให้ง่ายต่อการเพิ่มแท็บที่โครงสร้างแบบกําหนดเอง - ไม่ว่าจะเป็นรายงานแบบฟอร์มหรืออัตโนมัติเนื้อหาแบบไดนามิก

ปัญหาโลกจริง

การสร้างตารางที่โครงสร้างได้ดีในไฟล์ PDF โดยมือเป็นเรื่องบ้าโดยเฉพาะอย่างยิ่งกับข้อมูลแบบไดนามิกหรือจํานวนมาก การอัตโนมัติกระบวนการนี้ภายในแอพ .NET ช่วยประหยัดเวลาให้มั่นใจว่ามีความสม่ําเสมอและลดความผิดพลาดของมนุษย์

ความคิดเห็นเกี่ยวกับโซลูชัน

Aspose.PDF Table Generator for .NET ช่วยให้ผู้พัฒนาสามารถกําหนดรูปแบบและใส่ตารางได้ทุกที่ในเอกสาร PDF APIs ที่ยืดหยุ่นช่วยให้คุณสามารถควบคุมแถวเซลล์และเนื้อหาเซลเซียลรวมถึงข้อความ HTML fragments รูปภาพและแม่นยํา (TeX) equations

ข้อกําหนด

  • Visual Studio 2019 หรือภายหลัง
  • .NET 6.0 หรือเร็วกว่า
  • Aspose.PDF สําหรับ .NET ติดตั้งผ่าน NuGet
PM> Install-Package Aspose.PDF

การดําเนินการขั้นตอนขั้นตอน

ขั้นตอน 1: ติดตั้งและกําหนดค่า Aspose.PDF

using Aspose.Pdf.Plugins;
using System.IO;

ขั้นตอน 2: สร้างตารางและเพิ่มไฟล์ PDF

// Create TableGenerator
var generator = new TableGenerator();
// Create TableOptions and add a demo table to the first page
var options = new TableOptions()
    .InsertPageAfter(1)  // Insert after first page (or .InsertPageBefore(pageNum))
    .AddTable()
        .AddRow()
            .AddCell().AddParagraph(new HtmlFragment("<b>Header 1</b>"))
            .AddCell().AddParagraph(new TextFragment("Header 2"))
        .AddRow()
            .AddCell().AddParagraph(new TextFragment("Row 1 Cell 1"))
            .AddCell().AddParagraph(new TeXFragment("$E=mc^2$", true));
// Add input/output file sources
options.AddInput(new FileDataSource(@"C:\Samples\input.pdf"));
options.AddOutput(new FileDataSource(@"C:\Samples\output_table.pdf"));
// Process
generator.Process(options);

การใช้กรณีและแอพพลิเคชัน (ด้วยการเปลี่ยนแปลงรหัส)

1. เพิ่มตารางหลังหรือก่อนหน้าของหน้าเฉพาะ

ใส่ตารางในสถานที่ที่ถูกต้องในเอกสารของคุณ:

var options = new TableOptions()
    .InsertPageAfter(2)   // or .InsertPageBefore(3)
    .AddTable()
        .AddRow()
            .AddCell().AddParagraph(new TextFragment("After Page 2"));

2. การสร้างตารางแบบไดนามิกตามข้อมูล

ผ่านการเก็บรวบรวมเพื่อเพิ่มสายและเซลล์แบบไดนามิก:

var data = new[] { new[] { "A", "B" }, new[] { "C", "D" } };
var tableBuilder = new TableOptions().AddTable();
foreach (var row in data)
{
    var rowBuilder = tableBuilder.AddRow();
    foreach (var cell in row)
    {
        rowBuilder.AddCell().AddParagraph(new TextFragment(cell));
    }
}

เพิ่มโครงสร้างตารางและกระบวนการอื่น ๆ ตามปกติ

3. การสนับสนุนสําหรับเนื้อหาหลายประเภทในเซลล์

เซลล์อาจมีข้อความ, HTML, ภาพ, หรือ equations TeX:

  • AddParagraph(new HtmlFragment("<b>Bold HTML</b>"))
  • AddParagraph(new TextFragment("Simple Text"))
  • AddParagraph(new TeXFragment("$a^2 + b^2 = c^2$", true))

4. เพิ่มหลายตารางหรือการจัดตั้งโต๊ะใน PDF หนึ่ง

สายเคาน์เตอร์ที่เรียกว่า .AddTable() เพื่อใส่ตารางหลายรายการในเอกสารเดียว

5. Batch สร้างรายงานด้วยตาราง

การแทรกตารางอัตโนมัติสําหรับไฟล์ PDF หรือสร้างรายงานหลายหน้าโดยการล้อผ่านไฟล์และแหล่งข้อมูล

ความท้าทายและโซลูชั่นทั่วไป

ความท้าทาย: ** การวางตารางที่แม่นยําหรือเนื้อหาที่ซ่อนอยู่โซลูชัน: ** ใช้ .InsertPageAfter(pageNum) หรือ .InsertPageBefore(pageNum) สําหรับตําแหน่งที่แม่นยํา ผลลัพธ์การปรับตัว

ความท้าทาย: คอมเพล็กซ์แหล่งข้อมูลที่แตกต่างกันโซลูชัน: สร้างตารางแบบไดนามิกในรหัส ใช้คอลัมน์เพื่อสร้างเส้น/เซลล์ต่อรายการข้อมูล

ความท้าทาย: ** การจัดรูปแบบเซลล์หรือเนื้อหาที่ไม่ได้สนับสนุนโซลูชัน:** คลิกที่ประเภทเนื้อหาที่ได้รับการสนับสนุน (Text, HtmlFragment, TeXFrage, Image) สําหรับการจัดระเบียบขั้นสูงให้พิจารณาการประมวลผลหลัง

ประสิทธิภาพและการปฏิบัติที่ดีที่สุด

  • ประสิทธิภาพการผลิตก่อนอัตโนมัติขนาดใหญ่
  • ใช้โครงสร้างแบบไดนามิกสําหรับตารางความยาวที่เปลี่ยนแปลง
  • ตารางโซ่ / เซลล์ / รูอาคารเพื่อปรับปรุงโครงสร้าง
  • การรับรองการเข้า PDF ก่อนการประมวลผล

ตัวอย่างการดําเนินการที่สมบูรณ์

using Aspose.Pdf.Plugins;
using System;
using System.IO;

class Program
{
    static void Main()
    {
        var generator = new TableGenerator();
        var options = new TableOptions()
            .InsertPageAfter(1)
            .AddTable()
                .AddRow()
                    .AddCell().AddParagraph(new HtmlFragment("<b>Header 1</b>"))
                    .AddCell().AddParagraph(new TextFragment("Header 2"))
                .AddRow()
                    .AddCell().AddParagraph(new TextFragment("Row 1 Cell 1"))
                    .AddCell().AddParagraph(new TeXFragment("$E=mc^2$", true));
        options.AddInput(new FileDataSource(@"C:\Samples\input.pdf"));
        options.AddOutput(new FileDataSource(@"C:\Samples\output_table.pdf"));
        generator.Process(options);
    }
}

ข้อสรุป

Aspose.PDF Table Generator for .NET ช่วยให้ผู้พัฒนาสามารถสร้างรูปแบบและใส่ตารางในเอกสาร PDF โดยโปรแกรมประยุกต์ใช้ API สร้างความยืดหยุ่นสําหรับการจัดตั้งแบบไดนามิกโครงสร้างที่ซับซ้อนและการอัตโนมัติอย่างรวดเร็ว - ทั้งหมดจากรหัส C# ที่สะอาดและสามารถอ่านได้

 แบบไทย