Ako vytvoriť a vložiť tabuľky do PDF v .NET

Ako vytvoriť a vložiť tabuľky do PDF v .NET

Tento článok ukazuje, ako programovateľne vytvárať a vložiť tabuľky do PDF pomocou Aspose.PDF Table Generator pre .NET. Plugin table generator streamlí tvorbu tabuliek, takže je jednoduché pridať štruktúrované, štýlové tabule - či už pre správy, formuláre alebo dynamickú automatizáciu obsahu.

Reálny svetový problém

Vytvorenie dobre štruktúrovaných tabuliek v PDF manuálne je nudné, najmä s dynamickými alebo hromadnými údajmi. Automatizácia tohto procesu v aplikáciách .NET ušetrí čas, zabezpečuje konzistenciu a znižuje ľudské chyby.

Prehľad riešenia

Aspose.PDF Table Generator pre .NET umožňuje vývojárom definovať, formátovať a vložiť tabuľky kdekoľvek v dokumente PDF. Flexibilné API vám umožní ovládať riadky, bunky a obsah buniek – vrátane textu, HTML fragmentov, obrázkov a matematických (TeX) rovníc.

Predpoklady

  • Visual Studio 2019 alebo neskôr
  • .NET 6.0 alebo novšie
  • Aspose.PDF pre .NET nainštalovaný prostredníctvom NuGet
PM> Install-Package Aspose.PDF

krok za krokom implementácia

Krok 1: Inštalácia a konfigurácia Aspose.PDF

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

Krok 2: Vytvorte tabuľku a pridajte do 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);

Použitie prípadov a aplikácií (s kódovými variáciami)

1. Pridať tabuľku po alebo pred konkrétnou stránkou

Zadajte tabuľky na presných miestach vo vašom dokumente:

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

2. Dynamická generácia tabuľky založená na údajoch

Prejdite cez kolekcie a pridajte dynamické riadky a bunky:

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));
    }
}

Pridajte zvyšok štruktúry a procesu tabuľky ako obvykle.

3. Podpora pre viaceré typy obsahu v bunkách

Bunky môžu obsahovať text, HTML, obrázky alebo TeX rovnice:

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

4. Add Multiple Tables or Table Layouts in One PDF Pridať viacero tabuľiek alebo tabuliek v jednom PDF*

Chain vyzýva na .AddTable() Vložte viaceré tabuľky do jedného dokumentu.

5. Batch generuje správy s tabuľkami

Automatické vkladanie tabuľky pre súbor PDF alebo vytváranie viacstránkových správ prehľadom na súbory a zdroje údajov.

Spoločné výzvy a riešenia

Výzva: ** Precízne umiestnenie tabuľky alebo prekladanie obsahuRiešenie: ** Použitie .InsertPageAfter(pageNum) alebo .InsertPageBefore(pageNum) pre presné umiestnenie. prehľad výsledkov pre úpravu.

Výzva: Komplexné, variabilné zdroje údajovRiešenie: Vytvorte tabuľky dynamicky v kóde.Používajte loops na vytvorenie riadkov / buniek na položku údajov.

Výzva: Formátovanie buniek alebo nepodporovaný obsahRozhodnutie: Stick na podporované typy obsahu (Text, HtmlFragment, TeXFrage, Image).

Výkon a najlepšie postupy

  • Predbežný výstup pred veľkoobchodnou automatizáciou
  • Použite dynamické stavby pre variabilné tabuľky dĺžky
  • Chain table/cell/row stavitelia na streamline štruktúry
  • Validácia vstupných PDF pred spracovaním

Kompletný príklad realizácie

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);
    }
}

Záver

Aspose.PDF Tabuľkový generátor pre .NET umožňuje vývojárom programovo vytvárať, štýl a vložiť tabuľky do dokumentov PDF. Použite flexibilnú API pre dynamické rozloženie, komplexné štruktúry a rýchlu automatizáciu - všetko od čistej, čitateľnej kódy C#.

 Slovenčina