Hinzufügen von Text zu PDF in C#

Das PDF Format wird häufig verwendet, um verschiedene Arten von Dokumenten wie Rechnungen, Finanzberichte, Lebensläufe usw. zu erstellen. In der Welt der Automatisierung werden PDF Dokumente aus Web oder Desktop Anwendungen generiert und bearbeitet. Daher müssen Sie in bestimmten Fällen möglicherweise Text zu den vorhandenen PDF Dateien programmgesteuert hinzufügen. Dementsprechend zeigt dieser Artikel, wie man mit C# Text zu PDF Dokumenten hinzufügt.

C# API zum Hinzufügen von Text zu PDF

Um Text dynamisch zu PDF Dateien hinzuzufügen, verwenden wir Aspose.PDF for .NET. Es ist eine funktionsreiche API, mit der Sie PDF Dateien aus Ihren .NET Anwendungen heraus erstellen und bearbeiten können. Sie können die API entweder herunterladen oder sie mit NuGet installieren.

PM> Install-Package Aspose.PDF

Hinzufügen von Text zu einem PDF mit C#

Im Folgenden sind die Schritte zum Hinzufügen von Text zu einer PDF Datei mit C# aufgeführt.

  • Laden Sie die PDF Datei mit der Klasse Document.
  • Holen Sie sich die gewünschte Seite des PDFs in ein Page objekt.
  • Erstellen Sie ein TextFragment objekt und legen Sie dessen Text, Position, Schriftart, Hintergrundfarbe usw. fest.
  • Erstellen Sie ein TextBuilder objekt und initialisieren Sie es mit dem Page objekt.
  • Verwenden Sie die Methode TextBuilder.AppendText(TextFragment), um der PDF-Seite Text hinzuzufügen.
  • Speichern Sie die aktualisierte PDF Datei mit der methode Document.Save(String).

Das folgende Codebeispiel zeigt, wie einer PDF Datei Text hinzugefügt wird.

// Vollständige Beispiele und Datendateien finden Sie unter https://github.com/aspose-pdf/Aspose.PDF-for-.NET
// Dokument öffnen
Document pdfDocument = new Document("input.pdf");

// Holen Sie sich eine bestimmte Seite
Page pdfPage = (Page)pdfDocument.Pages[1];

// Textfragment erstellen
TextFragment textFragment = new TextFragment("main text");
textFragment.Position = new Position(100, 600);

// Texteigenschaften festlegen
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);

// TextBuilder objekt erstellen
TextBuilder textBuilder = new TextBuilder(pdfPage);

// Hängen Sie das Textfragment an die PDF-Seite an
textBuilder.AppendText(textFragment);

// Speichern Sie das resultierende PDF Dokument.
pdfDocument.Save("output.pdf");

Fügen Sie mit TextParagraph Text zu PDF hinzu

Im Folgenden sind die Schritte zum Hinzufügen von Text zu einer PDF Datei mit TextParagraph beschrieben.

Das folgende Codebeispiel zeigt, wie einer PDF mithilfe der TextParagraph Klasse Text hinzugefügt wird.

// Vollständige Beispiele und Datendateien finden Sie unter https://github.com/aspose-pdf/Aspose.PDF-for-.NET
string fontFile = "font.ttf";

// Eingabe PDF Datei laden
Document doc = new Document("input.pdf");

// Erstellen Sie ein Texterstellungsobjekt für die erste Seite des Dokuments
TextBuilder textBuilder = new TextBuilder(doc.Pages[1]);

// Textfragment mit Beispielstring erstellen
TextFragment textFragment = new TextFragment("Hello world");

if (fontFile != "")
{
    // Laden Sie die TrueType-Schriftart in das Stream objekt
    using (FileStream fontStream = File.OpenRead(fontFile))
    {
        // Legen Sie den Schriftartnamen für die Textzeichenfolge fest
        textFragment.TextState.Font = FontRepository.OpenFont(fontStream, FontTypes.TTF);
        
        // Geben Sie die Position für das Textfragment an
        textFragment.Position = new Position(10, 10);
        
        // Fügen Sie den Text zu TextBuilder hinzu, damit er über der PDF Datei platziert werden kann
        textBuilder.AppendText(textFragment);
    }

    // Speichern Sie das resultierende PDF Dokument
    doc.Save("output.pdf");
}

Transparenten Text in PDF in C# hinzufügen

Aspose.PDF for .NET ermöglicht auch das Hinzufügen von transparentem Text zu einem PDF Dokument, wie in den folgenden Schritten gezeigt wird.

Das folgende Codebeispiel zeigt, wie einer PDF Datei transparenter Text hinzugefügt wird.

// Vollständige Beispiele und Datendateien finden Sie unter https://github.com/aspose-pdf/Aspose.PDF-for-.NET
// Dokumentinstanz erstellen
Document doc = new Document("input.pdf");

// Erstellen Sie eine seitenweise Sammlung von PDF Dateien
Aspose.Pdf.Page page = doc.Pages.Add();

// Diagrammobjekt erstellen
Aspose.Pdf.Drawing.Graph canvas = new Aspose.Pdf.Drawing.Graph(100, 400);

// Erstellen Sie eine rechteckige Instanz mit bestimmten Abmessungen
Aspose.Pdf.Drawing.Rectangle rect = new Aspose.Pdf.Drawing.Rectangle(100, 100, 400, 400);

// Erstellen Sie ein Farbobjekt aus dem Alpha-Farbkanal
rect.GraphInfo.FillColor = Aspose.Pdf.Color.FromRgb(System.Drawing.Color.FromArgb(128, System.Drawing.Color.FromArgb(12957183)));

// Fügen Sie der Formensammlung des Graph objekts ein Rechteck hinzu
canvas.Shapes.Add(rect);

// Diagrammobjekt zur Absatzsammlung des Seitenobjekts hinzufügen
page.Paragraphs.Add(canvas);

// Stellen Sie den Wert so ein, dass die Position für das Diagrammobjekt nicht geändert wird
canvas.IsChangePosition = false;

// TextFragment-Instanz mit Beispielwert erstellen
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 ");

// Erstellen Sie ein Farbobjekt aus dem Alphakanal
Aspose.Pdf.Color color = Aspose.Pdf.Color.FromArgb(30, 0, 255, 0);

// Legen Sie Farbinformationen für die Textinstanz fest
text.TextState.ForegroundColor = color;

// Text zur Absatzsammlung der Seiteninstanz hinzufügen
page.Paragraphs.Add(text);

// Speichern Sie die aktualisierte PDF Datei
doc.Save("output.pdf");

Holen Sie sich eine kostenlose Lizenz

Sie können Aspose.PDF for .NET ohne Evaluierungseinschränkungen mit einer temporären Lizenz verwenden.

Fazit

In diesem Artikel haben Sie gelernt, wie Sie mithilfe von C# Text zu vorhandenen PDF Dateien hinzufügen. Außerdem haben Sie gesehen, wie transparenter Text dynamisch zu einem PDF hinzugefügt wird. Weitere Informationen zur C# PDF API finden Sie in der Dokumentation. Sie können Ihre Fragen auch in unserem Forum posten.

Siehe auch