Erstellen Sie eine PDF-Datei mit C#

Erstellen Sie eine PDF-Datei mit C#

Entwerfen Sie einen Entwurf Ihrer PDF-Datei, erstellen Sie Logik und erstellen Sie Ihre PDF-Datei mit dieser .NET PDF-Bibliothek. Das PDF-Dateiformat ist derzeit das am weitesten verbreitete Dateiformat. Die Ausstattung Ihrer Geschäftsanwendung mit einem PDF-Generator auf Unternehmensebene verschafft Ihrem Unternehmen einen Wettbewerbsvorteil. Diese Bibliothek macht es möglich, da sie eine breite Palette von Methoden bietet, die Ihnen die Kontrolle über die Manipulation und Konvertierung von PDF-Dateien geben. Daher werden wir in diesem Blogbeitrag lernen, wie man eine PDF-Datei mit C# programmgesteuert erstellt.

Wir werden die folgenden Abschnitte in diesem Artikel behandeln:

PDF-Generator-API-Installation

Sie können Ihre PDF-Dateien nach Belieben verarbeiten, da Sie mit dieser Bibliothek Ihre Geschäftsberichte und andere wichtige Dokumente automatisieren können. Der Installationsvorgang dieser .NET-API ist jedoch sehr einfach.

Laden Sie die DLL-Dateien herunter oder führen Sie den folgenden Befehl im NuGet-Paketmanager aus, um diese API in Ihr Projekt zu integrieren.

Install-Package Aspose.PDF 

Erstellen Sie eine PDF-Datei mit C#

Jetzt sind wir bereit, unsere erste PDF-Datei programmgesteuert mit C# zu erstellen.

Befolgen Sie die Schritte und das unten erwähnte Code-Snippet:

  1. Instanziieren Sie ein Objekt der Klasse Document, indem Sie seinen leeren Konstruktor aufrufen.
  2. Erstellen Sie eine Seite im PDF-Dokument, indem Sie die Methode Pages.Add() aufrufen.
  3. Erstellen Sie ein Objekt der Klasse TextFragment und fügen Sie eine Zeichenfolge in das Segment ein.
  4. Fügen Sie der Absatzsammlung ein Fragment hinzu, indem Sie die Methode Paragraphs.Add aufrufen.
  5. Speichern Sie das Dokument, indem Sie die Methode Save aufrufen.
// Instanziieren Sie ein Objekt von Document, indem Sie seinen leeren Konstruktor aufrufen.
Document doc = new Document();
// Erstellen Sie eine Seite im PDF-Dokument, indem Sie die Methode Pages.Add() aufrufen. 
Page page = doc.Pages.Add();
// Erstellen Sie ein Objekt der TextFragment-Klasse und fügen Sie eine Zeichenfolge in das Segment ein.
TextFragment fragment = new TextFragment("This is content");
// Fügen Sie der Paragraphs-Auflistung ein Fragment hinzu, indem Sie die Paragraphs.Add-Methode aufrufen  
page.Paragraphs.Add(fragment);
// Speichern Sie das Dokument, indem Sie die Save-Methode https://reference.aspose.com/pdf/net/aspose.pdf/document/save/#save_4 aufrufen
doc.Save("sample.pdf");  

Fügen Sie einer PDF-Datei programmgesteuert eine Schriftart hinzu

Jetzt können wir weiter tauchen und andere Funktionen erkunden, z. B. das programmgesteuerte Hinzufügen einer Schriftart zur PDF-Datei.

Sie können die folgenden Schritte ausführen:

  1. Erstellen Sie ein Objekt der Klasse Document.
  2. Erstellen Sie eine Seite in einem PDF-Dokument, indem Sie die Methode Pages.Add() aufrufen.
  3. Initialisieren Sie eine Instanz der Klasse TextFragment mit einer leeren Zeichenfolge.
  4. Erstellen Sie ein TextSegment-Objekt, um einem PDF-Dokument ein Textsegment hinzuzufügen.
  5. Rufen Sie den Textstatus für den Text ab, den das TextSegment-Objekt darstellt, indem Sie die Methode Text.TextState() aufrufen.
  6. Suchen und finden Sie eine Schriftart mit einem angegebenen Schriftartnamen, indem Sie die Methode FontRepository.FindFont aufrufen.
  7. Machen Sie die Schriftart eingebettet, indem Sie die Eigenschaft IsEmbedded auf true setzen.
  8. Rufen Sie den Textstatus eines Textes ab und weisen Sie ihn der Eigenschaft TextState zu.
  9. Legen Sie das Textsegment in einem Fragmentelement fest, indem Sie die Methode Add aufrufen.
  10. Rufen Sie die Methode Paragraphs.Add auf, um der Absatzsammlung ein Fragment hinzuzufügen.
  11. Rufen Sie die Methode Save auf, um das Dokument zu speichern.
// Erstellen Sie ein Objekt der Document-Klasse.
Document doc = new Document();
// Erstellen Sie eine Seite in einem PDF-Dokument, indem Sie die Methode Pages.Add() aufrufen.
Page page = doc.Pages.Add();
// Initialisieren Sie eine Instanz der TextFragment-Klasse mit einer leeren Zeichenfolge.
TextFragment fragment = new TextFragment("");
// Erstellen Sie ein TextSegment-Objekt, um einem PDF-Dokument ein Textsegment hinzuzufügen  
TextSegment segment = new TextSegment(" This is a sample text using Custom font.");
// Rufen Sie den Textstatus für den Text ab, den das TextSegment-Objekt darstellt, indem Sie die Methode Text.TextState() aufrufen.  
TextState ts = new Text.TextState();
// Suchen und finden Sie eine Schriftart mit einem angegebenen Schriftartnamen, indem Sie die Methode FontRepository.FindFont aufrufen. 
ts.Font = FontRepository.FindFont("Didot");
// Machen Sie die Schriftart eingebettet, indem Sie die IsEmbedded-Eigenschaft auf true setzen. 
ts.Font.IsEmbedded = true;
// Rufen Sie den Textstatus eines Textes ab und weisen Sie ihn der TextState-Eigenschaft zu. 
segment.TextState = ts;
// Legen Sie das Textsegment in einem Fragmentelement fest, indem Sie die Add-Methode aufrufen  
fragment.Segments.Add(segment);
// Rufen Sie die Paragraphs.Add-Methode auf, um der Paragraphs-Auflistung ein Fragment hinzuzufügen.
page.Paragraphs.Add(fragment);
// Dokument speichern
doc.Save("sample.pdf");  

Suchen und ersetzen Sie Text in einer PDF-Datei mithilfe der .NET-Bibliothek

In diesem Abschnitt erfahren Sie, wie wir eine PDF-Datei programmgesteuert in C# bearbeiten können. Wir werden die Such- und Ersetzungsfunktion in eine bestehende PDF-Datei implementieren.

Wir werden die Schritte und das unten erwähnte Code-Snippet durchgehen:

  1. Öffnen Sie das Dokument, indem Sie den Konstruktor der Klasse Document mit einer PDF-Quelldatei initialisieren.
  2. Erstellen Sie das Objekt TextFragmentAbsorber, um alle Instanzen des eingegebenen Suchausdrucks zu finden.
  3. Die Methode Pages.Accept akzeptiert den Absorber für alle Seiten.
  4. Rufen Sie die extrahierten Textfragmente ab, indem Sie auf die Eigenschaft TextFragments zugreifen.
  5. Durchlaufen Sie die Fragmente, ersetzen Sie den Text, indem Sie die Eigenschaft Text mit einem neuen Wert festlegen, und ändern Sie die Schriftgröße des neuen Textes, indem Sie FontSize der Eigenschaft TextState festlegen.
  6. Rufen Sie die Methode Save auf, um das resultierende PDF-Dokument zu speichern.

// Öffnen Sie das Dokument, indem Sie den Konstruktor der Document-Klasse mit einer PDF-Quelldatei initialisieren.
Document doc = new Document("sample.pdf");
// Erstellen Sie ein TextFragmentAbsorber-Objekt, um alle Instanzen des eingegebenen Suchausdrucks zu finden  
TextFragmentAbsorber textFragmentAbsorber = new TextFragmentAbsorber("custom");
// Pages.Accept-Methode akzeptiert den Absorber für alle Seiten.
doc.Pages.Accept(textFragmentAbsorber);
// Rufen Sie die extrahierten Textfragmente ab, indem Sie auf die TextFragments-Eigenschaft zugreifen  
TextFragmentCollection textFragmentCollection = textFragmentAbsorber.TextFragments;
// Schleife durch die Fragmente
foreach (TextFragment textFragment in textFragmentCollection)
{
    // Ersetzen Sie den Text, indem Sie die Text-Eigenschaft auf einen neuen Wert setzen.
    textFragment.Text = "changed";
    // Ändern Sie die Schriftgröße des neuen Textes, indem Sie FontSize der TextState-Eigenschaft festlegen  
    textFragment.TextState.FontSize = 18;
}
// SRufen Sie die Save-Methode auf, um das resultierende PDF-Dokument zu speichern.
doc.Save("ReplaceTextAll_out.pdf");

Die Ausgabe dieses Code-Snippets ist im folgenden Bild zu sehen:

Erstellen Sie eine PDF-Datei mit C#

Holen Sie sich eine kostenlose Lizenz

Sie können eine kostenlose temporäre Lizenz in Anspruch nehmen, um die API über die Evaluierungseinschränkungen hinaus zu testen.

Zusammenfassen

Damit sind wir am Ende dieses Blogbeitrags angelangt. Wir haben einige wichtige Themen zur PDF-Dateigenerator-API durchgegangen. Sie haben gelernt, wie Sie eine PDF-Datei mit C# erstellen und wie Sie vorhandene PDF-Dateien bearbeiten, z. B. Schriftarten hinzufügen, Text suchen und ersetzen. Darüber hinaus können Sie die Dokumentation dieser Bibliothek besuchen, um mehr über andere Methoden zu erfahren. Darüber hinaus finden Sie die Codebeispiele der Funktionen in diesem Github-Repo. Wir werden in naher Zukunft weitere nützliche Artikel veröffentlichen. Bleiben Sie daher mit conholdate.com in Kontakt, um die neuesten Updates zu erhalten.

Stelle eine Frage

Sie können uns Ihre Fragen oder Anliegen in unserem Forum mitteilen.

Siehe auch