Hledáte vysokorychlostní řešení pro generování bohatých souborů PDF v C#? Pokud ano, tento článek vám usnadní život tím, že zjednoduší proces vytváření souborů PDF od začátku.

Vytvářejte dokumenty PDF pomocí C#

Automatizované generování a zpracování PDF dokumentů se v posledních dnech stalo náročnou funkcí. V různých aplikacích jsou dokumenty PDF generovány dynamicky, jako jsou faktury, účtenky a různé typy sestav. Tento článek popisuje základní implementaci automatizace PDF v aplikacích .NET. Nakonec se naučíte, jak vytvářet soubory PDF v C#. Ukážeme si také, jak vkládat text, obrázky, tabulky a další komponenty do PDF pomocí C#.

C# .NET PDF knihovna pro generování PDF

Aspose.PDF for .NET je knihovna pro manipulaci se soubory PDF, která vám umožňuje vytvářet a zpracovávat soubory PDF z vašich aplikací .NET. Pomocí knihovny můžete dynamicky generovat různé druhy zpráv a obchodních dokumentů. Také můžete získat bezplatnou licenci a vytvořit požadované soubory PDF.

Knihovna je k dispozici jako stahovatelná knihovna DLL a také hostovaná na NuGet.

Install-Package Aspose.Pdf

Vytvářejte soubory PDF v C#

Začněme vytvořením jednoduchého dokumentu PDF obsahujícího fragment textu. Níže jsou uvedeny kroky k vytvoření souboru PDF pomocí C#.

Následující ukázka kódu ukazuje, jak vytvořit jednoduchý soubor PDF pomocí C#.

// Inicializovat objekt dokumentu
Document document = new Document();

// Přidat stránku
Page page = document.Pages.Add();

// Přidejte text na novou stránku
page.Paragraphs.Add(new Aspose.Pdf.Text.TextFragment("Hello World!"));

// Uložit PDF 
document.Save("document.pdf");

Přečtěte si více o vytváření složitých dokumentů PDF.

Jak upravit soubor PDF v C#

Úprava souboru PDF je stejně jednoduchá jako vytvoření nového. Jednoduše načtěte soubor pomocí třídy Document, proveďte požadované operace a uložte jej. Následují kroky k úpravě PDF.

  • Vytvořte objekt třídy Document a zadejte cestu souboru PDF k jeho konstruktoru.
  • Manipulujte se stránkami nebo obsahem dokumentu.
  • Uložte dokument pomocí metody Document.Save().

Následující ukázka kódu ukazuje, jak upravit PDF pomocí C#.

// Načíst PDF
var pdfDocument = new Aspose.Pdf.Document("document.pdf");

// Proveďte nějakou manipulaci, např. přidejte novou prázdnou stránku
pdfDocument.Pages.Add();

// Uložte aktualizované PDF
pdfDocument.Save(modifiedFileName);

Vložit obrázek do PDF pomocí C#

Pojďme se nyní podívat, jak vložit obrázek do dokumentu PDF. Níže jsou uvedeny kroky, jak tak učinit.

  • Chcete-li otevřít dokument PDF, vytvořte objekt třídy Document.
  • Přejděte na stránku, na kterou chcete přidat obrázek, pomocí třídy Page.
  • Přidejte obrázek do sbírky Zdroje stránky.
  • Pomocí operátorů umístěte obrázek na stránku:
    • GUložit operator to save the current graphical state.
    • ConcatenateMatrix operator to specify where the image is to be placed.
    • Dělat operator to draw the image on the page.
    • Nakonec použijte operátor GRestore k uložení aktualizovaného grafického stavu.
  • Uložte soubor PDF.

Následující ukázka kódu ukazuje, jak přidat obrázek do dokumentu PDF pomocí C#.

// Otevřete dokument
Document pdfDocument = new Document("document.pdf");

// Nastavte souřadnice
int lowerLeftX = 100;
int lowerLeftY = 100;
int upperRightX = 200;
int upperRightY = 200;

// Získejte stránku, kam je třeba přidat obrázek
Page page = pdfDocument.Pages[1];

// Načíst obrázek do streamu
FileStream imageStream = new FileStream("aspose-logo.jpg", FileMode.Open);

// Přidejte obrázek do sbírky Obrázky zdrojů stránky
page.Resources.Images.Add(imageStream);

// Použití operátoru GSave: tento operátor uloží aktuální stav grafiky
page.Contents.Add(new Aspose.Pdf.Operators.GSave());

// Vytvářejte objekty obdélníku a matice
Aspose.Pdf.Rectangle rectangle = new Aspose.Pdf.Rectangle(lowerLeftX, lowerLeftY, upperRightX, upperRightY);
Matrix matrix = new Matrix(new double[] { rectangle.URX - rectangle.LLX, 0, 0, rectangle.URY - rectangle.LLY, rectangle.LLX, rectangle.LLY });

// Použití operátoru ConcatenateMatrix (matice zřetězení): definuje, jak musí být obrázek umístěn
page.Contents.Add(new Aspose.Pdf.Operators.ConcatenateMatrix(matrix));
XImage ximage = page.Resources.Images[page.Resources.Images.Count];

// Použití operátoru Do: tento operátor kreslí obrázek
page.Contents.Add(new Aspose.Pdf.Operators.Do(ximage.Name));

// Použití operátoru GRestore: tento operátor obnovuje stav grafiky
page.Contents.Add(new Aspose.Pdf.Operators.GRestore()); 

// Uložit aktualizovaný dokument
pdfDocument.Save("document.pdf");

Přečtěte si více o vložte obrázky do PDF.

Vytvořte tabulku v PDF pomocí C#

Tabulky jsou nezbytnou součástí dokumentů, které se používají k uspořádání dat ve formě řádků a sloupců. Aspose.PDF for .NET vám poskytuje poměrně jednoduchý způsob vytváření a vkládání tabulek do dokumentů PDF. Následují kroky k provedení této operace.

  • Načtěte soubor PDF pomocí třídy Document.
  • Inicializujte tabulku a nastavte její sloupce a řádky pomocí třídy Table.
  • Nastavit nastavení tabulky (tj. ohraničení).
  • Naplňte tabulku vytvořením řádků pomocí metody Table.Rows.Add().
  • Přidejte tabulku na stránku pomocí metody Document.Pages1.Paragraphs.Add(Table).
  • Uložte soubor PDF.

Následující ukázka kódu ukazuje, jak vytvořit a přidat tabulku v dokumentu PDF v C#.

// Načíst zdrojový dokument PDF
Aspose.Pdf.Document doc = new Aspose.Pdf.Document("document.pdf");

// Inicializuje novou instanci tabulky
Aspose.Pdf.Table table = new Aspose.Pdf.Table();

// Nastavte barvu okraje tabulky jako LightGray
table.Border = new Aspose.Pdf.BorderInfo(Aspose.Pdf.BorderSide.All, .5f, Aspose.Pdf.Color.FromRgb(System.Drawing.Color.LightGray));

// Nastavte ohraničení buněk tabulky
table.DefaultCellBorder = new Aspose.Pdf.BorderInfo(Aspose.Pdf.BorderSide.All, .5f, Aspose.Pdf.Color.FromRgb(System.Drawing.Color.LightGray));

// Vytvořte smyčku pro přidání 10 řádků
for (int row_count = 1; row_count < 10; row_count++)
{
    // Přidat řádek do tabulky
    Aspose.Pdf.Row row = table.Rows.Add();
    // Přidejte buňky tabulky
    row.Cells.Add("Column (" + row_count + ", 1)");
    row.Cells.Add("Column (" + row_count + ", 2)");
    row.Cells.Add("Column (" + row_count + ", 3)");
}

// Přidejte objekt tabulky na první stránku vstupního dokumentu
doc.Pages[1].Paragraphs.Add(table);

// Uložte aktualizovaný dokument obsahující objekt tabulky
doc.Save("document_with_table_out.pdf");

Přečtěte si více o vytváření tabulek v PDF.

Vytvořte formulář v PDF v C#

Pro sběr dat od čtenářů se používají formuláře v PDF. Do formulářů PDF můžete vkládat textová pole, zaškrtávací políčka, přepínače a další podporované ovládací prvky. Formát PDF podporuje dva typy formulářů; Acro formuláře a XFA formuláře (viz podrobnosti). Následují kroky k vytvoření a přidání formulářů do PDF.

Následující ukázka kódu ukazuje, jak přidat formuláře do dokumentu PDF pomocí C#.

// Otevřete dokument
Document pdfDocument = new Document("document.pdf");

// Vytvořte pole
TextBoxField textBoxField = new TextBoxField(pdfDocument.Pages[1], new Aspose.Pdf.Rectangle(100, 200, 300, 300));
textBoxField.PartialName = "textbox1";
textBoxField.Value = "Text Box";

// TextBoxField.Border = new Border(
Border border = new Border(textBoxField);
border.Width = 5;
border.Dash = new Dash(1, 1);
textBoxField.Border = border;

textBoxField.Color = Aspose.Pdf.Color.FromRgb(System.Drawing.Color.Green);

// Přidejte pole do dokumentu
pdfDocument.Form.Add(textBoxField, 1);

// Uložte upravené PDF
pdfDocument.Save("output.pdf");

Přečtěte si více o vytváření formulářů v PDF.

Zdarma C# PDF knihovna

Můžete získat zcela bezplatnou dočasnou licenci a generovat soubory PDF bez jakýchkoli omezení.

Zdarma online prohlížeč a editor PDF

Aspose.PDF poskytuje bezplatnou online webovou aplikaci, která vám umožňuje prohlížet soubory PDF a upravovat soubory PDF.

Závěr

V tomto příspěvku jste se naučili, jak vytvářet soubory PDF od začátku pomocí C#. Dále jste poznali, jak programově vkládat různé typy komponent, jako jsou text, obrázky, tabulky a formuláře, do dokumentu PDF. Více o PDF API se můžete dozvědět pomocí dokumentace.

Viz také