Přidat text do PDF v C#

Formát PDF se široce používá ke generování různých typů dokumentů, jako jsou faktury, finanční zprávy, životopisy atd. Ve světě automatizace jsou dokumenty PDF generovány a manipulovány z webových nebo desktopových aplikací. V určitých případech proto možná budete muset přidat text do stávajících souborů PDF programově. Následně tento článek ukazuje, jak přidat text do souborů PDF v C#.

Knihovna pro manipulaci s textem v C# PDF

K dynamickému přidávání textu do souborů PDF použijeme Aspose.PDF for .NET. Je to knihovna bohatá na funkce, která vám umožňuje vytvářet a manipulovat se soubory PDF z vašich aplikací .NET. Knihovnu si můžete stáhnout nebo ji nainstalovat pomocí NuGet.

PM> Install-Package Aspose.PDF

C# Přidání textu do PDF

Následují kroky pro přidání textu do souboru PDF v C#.

C# Kód pro vložení textu PDF

Následující ukázka kódu ukazuje, jak vložit text do souboru PDF v C#.

// Úplné příklady a datové soubory najdete na https://github.com/aspose-pdf/Aspose.PDF-for-.NET
// Otevřete dokument
Document pdfDocument = new Document("input.pdf");

// Získejte konkrétní stránku
Page pdfPage = (Page)pdfDocument.Pages[1];

// Vytvořte fragment textu
TextFragment textFragment = new TextFragment("main text");
textFragment.Position = new Position(100, 600);

// Nastavte vlastnosti textu
textFragment.TextState.FontSize = 12;
textFragment.TextState.Font = FontRepository.FindFont("TimesNewRoman");
textFragment.TextState.BackgroundColor = Aspose.Pdf.Color.FromRgb(System.Drawing.Color.LightGray);
textFragment.TextState.ForegroundColor = Aspose.Pdf.Color.FromRgb(System.Drawing.Color.Red);

// Vytvořte objekt TextBuilder
TextBuilder textBuilder = new TextBuilder(pdfPage);

// Připojte fragment textu na stránku PDF
textBuilder.AppendText(textFragment);

// Uložte výsledný dokument PDF.
pdfDocument.Save("output.pdf");

C# Vložit text do PDF pomocí TextParagraph

Níže jsou uvedeny kroky pro přidání textu do souboru PDF pomocí TextParagraph.

Následující ukázka kódu C# ukazuje vkládání textu do PDF pomocí třídy TextParagraph.

// Úplné příklady a datové soubory najdete na https://github.com/aspose-pdf/Aspose.PDF-for-.NET
string fontFile = "font.ttf";

// Načíst vstupní soubor PDF
Document doc = new Document("input.pdf");

// Vytvořte objekt pro tvorbu textu pro první stránku dokumentu
TextBuilder textBuilder = new TextBuilder(doc.Pages[1]);

// Vytvořte textový fragment s ukázkovým řetězcem
TextFragment textFragment = new TextFragment("Hello world");

if (fontFile != "")
{
    // Načtěte písmo TrueType do objektu streamu
    using (FileStream fontStream = File.OpenRead(fontFile))
    {
        // Nastavte název písma pro textový řetězec
        textFragment.TextState.Font = FontRepository.OpenFont(fontStream, FontTypes.TTF);
        
        // Určete pozici pro textový fragment
        textFragment.Position = new Position(10, 10);
        
        // Přidejte text do TextBuilderu, aby jej bylo možné umístit přes soubor PDF
        textBuilder.AppendText(textFragment);
    }

    // Uložte výsledný dokument PDF
    doc.Save("output.pdf");
}

Vložit průhledný text do PDF v C#

Aspose.PDF for .NET také umožňuje přidání průhledného textu do dokumentu PDF, jak je ukázáno v následujících krocích.

Následující ukázka kódu ukazuje, jak přidat průhledný text do PDF v C#.

// Úplné příklady a datové soubory najdete na https://github.com/aspose-pdf/Aspose.PDF-for-.NET
// Vytvořit instanci dokumentu
Document doc = new Document("input.pdf");

// Vytvořte kolekci stránek ve formátu PDF
Aspose.Pdf.Page page = doc.Pages.Add();

// Vytvořit objekt Graph
Aspose.Pdf.Drawing.Graph canvas = new Aspose.Pdf.Drawing.Graph(100, 400);

// Vytvořte instanci obdélníku s určitými rozměry
Aspose.Pdf.Drawing.Rectangle rect = new Aspose.Pdf.Drawing.Rectangle(100, 100, 400, 400);

// Vytvořte barevný objekt z barevného kanálu Alpha
rect.GraphInfo.FillColor = Aspose.Pdf.Color.FromRgb(System.Drawing.Color.FromArgb(128, System.Drawing.Color.FromArgb(12957183)));

// Přidejte obdélník do kolekce tvarů objektu Graph
canvas.Shapes.Add(rect);

// Přidejte objekt grafu do kolekce odstavců objektu stránky
page.Paragraphs.Add(canvas);

// Nastavte hodnotu tak, aby neměnila polohu objektu grafu
canvas.IsChangePosition = false;

// Vytvořte instanci TextFragment s ukázkovou hodnotou
TextFragment text = new TextFragment("transparent text transparent text transparent text transparent text transparent text transparent text transparent text transparent text transparent text transparent text transparent text transparent text transparent text transparent text transparent text transparent text ");

// Vytvořte barevný objekt z alfa kanálu
Aspose.Pdf.Color color = Aspose.Pdf.Color.FromArgb(30, 0, 255, 0);

// Nastavte informace o barvě pro instanci textu
text.TextState.ForegroundColor = color;

// Přidejte text do kolekce odstavců instance stránky
page.Paragraphs.Add(text);

// Uložte aktualizovaný soubor PDF
doc.Save("output.pdf");

Bezplatná knihovna pro vkládání textu PDF

Můžete získat bezplatnou dočasnou licenci pro vkládání textu do souborů PDF bez jakýchkoli omezení.

C# PDF knihovna

Více o knihovně C# PDF můžete prozkoumat pomocí dokumentace. Své dotazy můžete také zveřejňovat na našem fóru.

Závěr

V tomto článku jste se naučili, jak přidat text do existujících souborů PDF pomocí C#. Kromě toho jste viděli, jak dynamicky přidat průhledný text do PDF. Knihovnu můžete snadno nainstalovat a použít poskytnuté metody vkládání textu do souborů PDF.

Viz také