Stempeln von BarCodes auf PDFs mit C
Mit IronBarcodes Methode CreateBarcode können Sie in C# Barcodes auf bestehende PDF-Dokumente drucken. Verwenden Sie dazu StampToExistingPdfPage für einzelne Seiten oder StampToExistingPdfPages für mehrere Seiten und geben Sie dabei Koordinaten und Seitenzahlen an.
Schnellstart: Einen generierten Barcode auf eine PDF-Seite drucken
Dieses Beispiel zeigt, wie man mit IronBarCode's CreateBarcode einen Barcode generiert und ihn auf eine bestehende PDF-Seite stempelt. Geben Sie den PDF-Pfad, die Positionskoordinaten und die Seitenzahl an.
-
Installieren Sie IronBarcode mit NuGet Package Manager
PM > Install-Package BarCode -
Kopieren Sie diesen Codeausschnitt und führen Sie ihn aus.
IronBarCode.BarcodeWriter.CreateBarcode("https://my.site", IronBarCode.BarcodeEncoding.QRCode, 150, 150) .StampToExistingPdfPage("report.pdf", x: 50, y: 50, pageNumber: 1); -
Bereitstellen zum Testen in Ihrer Live-Umgebung
Beginnen Sie noch heute, IronBarcode in Ihrem Projekt zu verwenden, mit einer kostenlosen Testversion
Minimaler Arbeitsablauf (5 Schritte)
- Herunterladen einer C#-Bibliothek zum Einprägen von Barcodes in PDF-Dateien
- Erstellen Sie einen Barcode mit einem bestimmten Barcodetyp und Wert
- Bestimmen Sie die Barcode-Größe
- Verwenden Sie die Methode `StampToExistingPdfPage`, um den Barcode auf eine einzelne PDF-Seite zu stempeln
- Verwenden Sie die Methode `StampToExistingPdfPages`, um den Barcode auf mehrere PDF-Seiten zu stempeln
Wie kann ich einen BarCode auf eine bestehende PDF-Seite stempeln?
Neben dem Export von Barcodes als PDF ermöglicht IronBarcode auch das direkte Stempeln eines GeneratedBarcode auf bestehende PDF-Dokumente. Diese Funktion ist nützlich beim Hinzufügen von Tracking-Codes, Inventar-Etiketten oder Dokumentenkennungen zu bestehenden Berichten, Rechnungen oder Formularen. Der folgende Codeschnipsel veranschaulicht diese Aufgabe.
:path=/static-assets/barcode/content-code-examples/how-to/StampBarcodeOnExistingPdfPage.cs
using IronBarCode;
GeneratedBarcode myBarcode = BarcodeWriter.CreateBarcode("https://ironsoftware.com/csharp/barcode/", BarcodeEncoding.Code128, 200, 100);
myBarcode.StampToExistingPdfPage("pdf_file_path.pdf", x: 200, y: 100, 3, "password");
Imports IronBarCode
Private myBarcode As GeneratedBarcode = BarcodeWriter.CreateBarcode("https://ironsoftware.com/csharp/barcode/", BarcodeEncoding.Code128, 200, 100)
myBarcode.StampToExistingPdfPage("pdf_file_path.pdf", x:= 200, y:= 100, 3, "password")
Welche Parameter sind für StampToExistingPdfPage erforderlich?
Der Codeausschnitt ruft die Methode StampToExistingPdfPage() mit einem GeneratedBarcode-Objekt auf, um das Objekt in das PDF-Dokument einzufügen. Diese Methode bietet Flexibilität bei gleichzeitiger Einfachheit. Im Folgenden finden Sie die Parameter der Methode:
pdfFilePath: Ein System.String, der den Pfad des PDF-Dokuments (relativ oder absolut) darstellt.x: Ein System.Int32 für die horizontale Position in Pixeln vom linken Rand.y: Ein System.Int32 für die vertikale Position in Pixeln vom unteren Rand.pageNumber: Ein System.Int32 , der die Seite angibt (1-indiziert, erste Seite ist 1).password: Ein System.String für passwortgeschützte PDFs (optional).
Wann sollte ich StampToExistingPdfPage verwenden?
Durch Ausführen des Code-Snippets wird der GeneratedBarcode direkt in das PDF-Dokument eingefügt, ohne es zwischenzuspeichern. Diese Methode eignet sich für Szenarien, die Folgendes erfordern:
- Eindeutige Tracking-Codes auf Versandetiketten oder Lieferdokumenten
- Chargennummern auf Fertigungsberichten
- Dokumentenkontrollnummern auf rechtlichen oder behördlichen Formularen
- QR-Codes für digitale Authentifizierung oder Schnellzugriffslinks
Der Ansatz des direkten Stempelns spart Bearbeitungszeit und eliminiert temporäre Dateien. Informationen zu verschiedenen Barcode-Typen finden Sie im Leitfaden zu den unterstützten Barcode-Formaten.
Wie kann ich einen BarCode auf mehrere PDF-Seiten stempeln?
Manchmal muss derselbe BarCode auf mehreren Seiten eingeprägt werden. Zu den üblichen Verwendungszwecken gehören das Anbringen von Dokumentenkennungen auf jeder Seite mehrseitiger Berichte, das Hinzufügen von Versionskontrollcodes in technischen Dokumenten oder das Einfügen von Sicherheitsbarcodes auf jeder Seite vertraulicher Materialien. Anstatt die Single-Page-Methode in einer Schleife zu verwenden, nutzen Sie die Methode StampToExistingPdfPages() aus der Klasse GeneratedBarcode. Der folgende Codeschnipsel veranschaulicht diese Methode.
:path=/static-assets/barcode/content-code-examples/how-to/StampBarcodeOnMultiplePdfPages.cs
using IronBarCode;
using System.Collections.Generic;
GeneratedBarcode myBarcode = BarcodeWriter.CreateBarcode("https://ironsoftware.com/csharp/barcode/", BarcodeEncoding.Code128, 200, 100);
List<int> pages = new List<int>();
pages.Add(1);
pages.Add(2);
pages.Add(3);
myBarcode.StampToExistingPdfPages("pdf_file_path.pdf", x: 200, y: 100, pages, "password");
Imports IronBarCode
Imports System.Collections.Generic
Private myBarcode As GeneratedBarcode = BarcodeWriter.CreateBarcode("https://ironsoftware.com/csharp/barcode/", BarcodeEncoding.Code128, 200, 100)
Private pages As New List(Of Integer)()
pages.Add(1)
pages.Add(2)
pages.Add(3)
myBarcode.StampToExistingPdfPages("pdf_file_path.pdf", x:= 200, y:= 100, pages, "password")
Für mehr Flexibilität sollten Sie LINQ verwenden, um Seitenbereiche dynamisch zu generieren:
// Stamp on all even pages from 2 to 10
var evenPages = Enumerable.Range(1, 10).Where(x => x % 2 == 0).ToList();
myBarcode.StampToExistingPdfPages("pdf_file_path.pdf", x: 200, y: 100, evenPages, "password");
// Stamp on the first and last 3 pages of a 20-page document
var selectedPages = new List<int> { 1, 2, 3, 18, 19, 20 };
myBarcode.StampToExistingPdfPages("pdf_file_path.pdf", x: 200, y: 100, selectedPages, "password");
// Stamp on all even pages from 2 to 10
var evenPages = Enumerable.Range(1, 10).Where(x => x % 2 == 0).ToList();
myBarcode.StampToExistingPdfPages("pdf_file_path.pdf", x: 200, y: 100, evenPages, "password");
// Stamp on the first and last 3 pages of a 20-page document
var selectedPages = new List<int> { 1, 2, 3, 18, 19, 20 };
myBarcode.StampToExistingPdfPages("pdf_file_path.pdf", x: 200, y: 100, selectedPages, "password");
Imports System.Linq
' Stamp on all even pages from 2 to 10
Dim evenPages = Enumerable.Range(1, 10).Where(Function(x) x Mod 2 = 0).ToList()
myBarcode.StampToExistingPdfPages("pdf_file_path.pdf", x:=200, y:=100, evenPages, "password")
' Stamp on the first and last 3 pages of a 20-page document
Dim selectedPages = New List(Of Integer) From {1, 2, 3, 18, 19, 20}
myBarcode.StampToExistingPdfPages("pdf_file_path.pdf", x:=200, y:=100, selectedPages, "password")
Welche Parameter akzeptiert StampToExistingPdfPages?
Im Folgenden finden Sie die Parameter der Methode:
pdfFilePath: Ein System.String, der den Pfad des PDF-Dokuments darstellt.x: Ein System.Int32 für die horizontale Position in Pixeln.y: Ein System.Int32 für die vertikale Position in Pixeln.pageNumbers: Ein IEnumerableAnzahl der abzustempelnden Seiten (1-indexiert). password: Ein System.String für passwortgeschützte PDFs (optional).
Warum StampToExistingPdfPages anstelle einer Schleife verwenden?
Diese Methode ermöglicht ein effizientes Stempeln von Barcodes auf mehreren Seiten ohne manuelle Iteration und verbessert die Lesbarkeit und Leistung des Codes. Die interne Implementierung optimiert die PDF-Verarbeitung, was sich in:
- Schnellere Ausführung: PDF wird nur einmal geöffnet und verarbeitet, nicht mehrmals
- Geringere Speichernutzung: Effizientes Ressourcenmanagement für große PDFs
- Sauberer Code: Keine manuelle Verwaltung von Schleifen und Fehlerbehandlung
- Atomische Operationen: Alle Seiten werden in einer einzigen Operation gestempelt
Fortgeschrittene Stanztechniken
Anpassen des Aussehens von BarCodes vor dem Stempeln
Bevor Sie Ihren Barcode in eine PDF-Datei stempeln, sollten Sie sein Aussehen anpassen. IronBarcode offers extensive customization options:
GeneratedBarcode myBarcode = BarcodeWriter.CreateBarcode("INVOICE-2024-001", BarcodeEncoding.Code128, 250, 80);
// Customize the appearance
myBarcode.AddAnnotationTextAboveBarcode("Invoice Number");
myBarcode.AddAnnotationTextBelowBarcode("Scan for digital copy");
myBarcode.SetMargins(10);
myBarcode.ChangeBarcodeForegroundColor(System.Drawing.Color.DarkBlue);
// Now stamp the customized barcode
myBarcode.StampToExistingPdfPage("invoice.pdf", x: 450, y: 700, pageNumber: 1);
GeneratedBarcode myBarcode = BarcodeWriter.CreateBarcode("INVOICE-2024-001", BarcodeEncoding.Code128, 250, 80);
// Customize the appearance
myBarcode.AddAnnotationTextAboveBarcode("Invoice Number");
myBarcode.AddAnnotationTextBelowBarcode("Scan for digital copy");
myBarcode.SetMargins(10);
myBarcode.ChangeBarcodeForegroundColor(System.Drawing.Color.DarkBlue);
// Now stamp the customized barcode
myBarcode.StampToExistingPdfPage("invoice.pdf", x: 450, y: 700, pageNumber: 1);
Dim myBarcode As GeneratedBarcode = BarcodeWriter.CreateBarcode("INVOICE-2024-001", BarcodeEncoding.Code128, 250, 80)
' Customize the appearance
myBarcode.AddAnnotationTextAboveBarcode("Invoice Number")
myBarcode.AddAnnotationTextBelowBarcode("Scan for digital copy")
myBarcode.SetMargins(10)
myBarcode.ChangeBarcodeForegroundColor(System.Drawing.Color.DarkBlue)
' Now stamp the customized barcode
myBarcode.StampToExistingPdfPage("invoice.pdf", x:=450, y:=700, pageNumber:=1)
Arbeiten mit verschiedenen BarCode-Typen
Verschiedene Szenarien erfordern unterschiedliche Barcodetypen. QR-Codes eignen sich für URLs und große Datensätze, während Code128 für alphanumerische Bezeichnungen geeignet ist. Learn more about creating QR codes or explore other formats:
// QR Code for contact information
var qrCode = BarcodeWriter.CreateBarcode("BEGIN:VCARD\nFN:John Doe\nTEL:555-1234\nEND:VCARD",
BarcodeEncoding.QRCode, 150, 150);
qrCode.StampToExistingPdfPage("businesscard.pdf", x: 400, y: 50, pageNumber: 1);
// Data Matrix for product tracking
var dataMatrix = BarcodeWriter.CreateBarcode("PROD-2024-BATCH-789",
BarcodeEncoding.DataMatrix, 100, 100);
dataMatrix.StampToExistingPdfPage("product_sheet.pdf", x: 50, y: 750, pageNumber: 1);
// QR Code for contact information
var qrCode = BarcodeWriter.CreateBarcode("BEGIN:VCARD\nFN:John Doe\nTEL:555-1234\nEND:VCARD",
BarcodeEncoding.QRCode, 150, 150);
qrCode.StampToExistingPdfPage("businesscard.pdf", x: 400, y: 50, pageNumber: 1);
// Data Matrix for product tracking
var dataMatrix = BarcodeWriter.CreateBarcode("PROD-2024-BATCH-789",
BarcodeEncoding.DataMatrix, 100, 100);
dataMatrix.StampToExistingPdfPage("product_sheet.pdf", x: 50, y: 750, pageNumber: 1);
' QR Code for contact information
Dim qrCode = BarcodeWriter.CreateBarcode("BEGIN:VCARD" & vbLf & "FN:John Doe" & vbLf & "TEL:555-1234" & vbLf & "END:VCARD",
BarcodeEncoding.QRCode, 150, 150)
qrCode.StampToExistingPdfPage("businesscard.pdf", x:=400, y:=50, pageNumber:=1)
' Data Matrix for product tracking
Dim dataMatrix = BarcodeWriter.CreateBarcode("PROD-2024-BATCH-789",
BarcodeEncoding.DataMatrix, 100, 100)
dataMatrix.StampToExistingPdfPage("product_sheet.pdf", x:=50, y:=750, pageNumber:=1)
Fehlerbehandlung und bewährte Praktiken
Implementierung einer angemessenen Fehlerbehandlung bei der Arbeit mit PDF-Stempeloperationen:
try
{
GeneratedBarcode myBarcode = BarcodeWriter.CreateBarcode("DOCUMENT-ID-12345",
BarcodeEncoding.Code128, 200, 60);
// Verify the PDF exists before attempting to stamp
if (File.Exists("target.pdf"))
{
myBarcode.StampToExistingPdfPage("target.pdf", x: 100, y: 100, pageNumber: 1);
Console.WriteLine("Barcode stamped successfully!");
}
else
{
Console.WriteLine("PDF file not found!");
}
}
catch (Exception ex)
{
Console.WriteLine($"Error stamping barcode: {ex.Message}");
// Log the error or handle it appropriately
}
try
{
GeneratedBarcode myBarcode = BarcodeWriter.CreateBarcode("DOCUMENT-ID-12345",
BarcodeEncoding.Code128, 200, 60);
// Verify the PDF exists before attempting to stamp
if (File.Exists("target.pdf"))
{
myBarcode.StampToExistingPdfPage("target.pdf", x: 100, y: 100, pageNumber: 1);
Console.WriteLine("Barcode stamped successfully!");
}
else
{
Console.WriteLine("PDF file not found!");
}
}
catch (Exception ex)
{
Console.WriteLine($"Error stamping barcode: {ex.Message}");
// Log the error or handle it appropriately
}
Imports System
Imports System.IO
Try
Dim myBarcode As GeneratedBarcode = BarcodeWriter.CreateBarcode("DOCUMENT-ID-12345", BarcodeEncoding.Code128, 200, 60)
' Verify the PDF exists before attempting to stamp
If File.Exists("target.pdf") Then
myBarcode.StampToExistingPdfPage("target.pdf", x:=100, y:=100, pageNumber:=1)
Console.WriteLine("Barcode stamped successfully!")
Else
Console.WriteLine("PDF file not found!")
End If
Catch ex As Exception
Console.WriteLine($"Error stamping barcode: {ex.Message}")
' Log the error or handle it appropriately
End Try
Erwägungen zur Leistung
Wenn Sie mit großen PDF-Dateien oder mehreren Stempelvorgängen arbeiten, sollten Sie diese Tipps beachten:
- Stapelverarbeitung : Verwenden Sie
StampToExistingPdfPages()anstelle der SchleifeStampToExistingPdfPage() - Barcode-Caching : Einmal erstellen und das
GeneratedBarcode-Objekt wiederverwenden - Koordinatenberechnung: Konsistente Positionskoordinaten vorberechnen
- Speichermanagement: Verarbeitung sehr großer PDF-Dateien in Stapeln
Für erweiterte Szenarien, bei denen Barcodes nach dem Stempeln aus PDFs gelesen werden sollen, lesen Sie unseren Leitfaden zum Lesen von Barcodes aus PDF-Dokumenten.
Integration mit anderen IronBarcode-Funktionen
Die PDF-Stempelfunktionalität arbeitet nahtlos mit anderen IronBarcode-Funktionen zusammen. Kombinieren Sie sie mit der asynchronen Verarbeitung für bessere Webanwendungsleistung:
// Asynchronous PDF stamping
public async Task StampBarcodeAsync(string pdfPath, string barcodeData)
{
await Task.Run(() =>
{
var barcode = BarcodeWriter.CreateBarcode(barcodeData, BarcodeEncoding.QRCode, 200, 200);
barcode.StampToExistingPdfPage(pdfPath, x: 100, y: 100, pageNumber: 1);
});
}
// Asynchronous PDF stamping
public async Task StampBarcodeAsync(string pdfPath, string barcodeData)
{
await Task.Run(() =>
{
var barcode = BarcodeWriter.CreateBarcode(barcodeData, BarcodeEncoding.QRCode, 200, 200);
barcode.StampToExistingPdfPage(pdfPath, x: 100, y: 100, pageNumber: 1);
});
}
Imports System.Threading.Tasks
' Asynchronous PDF stamping
Public Async Function StampBarcodeAsync(pdfPath As String, barcodeData As String) As Task
Await Task.Run(Sub()
Dim barcode = BarcodeWriter.CreateBarcode(barcodeData, BarcodeEncoding.QRCode, 200, 200)
barcode.StampToExistingPdfPage(pdfPath, x:=100, y:=100, pageNumber:=1)
End Sub)
End Function
Nutzen Sie außerdem die Bildkorrektur-Funktionen von IronBarcode bei der Arbeit mit gescannten PDFs, die vor oder nach dem Barcode-Stempeln möglicherweise verbessert werden müssen.
Behebung häufiger Probleme
Wenn Sie beim Stempeln von Barcodes auf PDFs auf Probleme stoßen, finden Sie hier Lösungen:
- Koordinaten-Probleme: PDF-Koordinaten beginnen in der linken unteren Ecke, nicht links oben
- Passwortgeschützte PDFs: Sicherstellung der korrekten Passwortparameter für verschlüsselte PDFs
- Large File Sizes: For optimization and handling tips, see our troubleshooting guide
- Font or Encoding Issues: For special characters or Unicode, check our writing Unicode barcodes guide
Die Befolgung dieser Richtlinien und die Nutzung der IronBarcode-Funktionen zum Stempeln von PDF-Dokumenten ermöglicht das effiziente Hinzufügen von Barcodes zu bestehenden PDF-Dokumenten bei gleichzeitiger Beibehaltung einer hohen Leistung und Codequalität.
Häufig gestellte Fragen
Wie füge ich in C# einen Barcode zu einem bestehenden PDF-Dokument hinzu?
Verwenden Sie die CreateBarcode-Methode von IronBarcode, um einen Barcode zu generieren, und wenden Sie dann die StampToExistingPdfPage-Methode an, um ihn auf Ihrem PDF zu platzieren. Geben Sie einfach den Pfad zur PDF-Datei, die Positionskoordinaten (x, y) und die Seitenzahl an, auf der der Barcode erscheinen soll.
Welche Parameter sind für die Methode StampToExistingPdfPage erforderlich?
Die StampToExistingPdfPage-Methode in IronBarcode erfordert: pdfFilePath (String für den PDF-Speicherort), x- und y-Koordinaten (Ganzzahlen für die Positionierung in Pixeln), pageNumber (Ganzzahl, 1-indiziert) und einen optionalen Passwortparameter für geschützte PDFs.
Kann ich denselben Barcode auf mehrere Seiten einer PDF-Datei stempeln?
Ja, IronBarcode bietet die StampToExistingPdfPages-Methode (beachten Sie den Plural 'Pages'), mit der Sie einen einzelnen generierten Barcode auf mehrere Seiten in Ihrem PDF-Dokument stempeln können.
Welches Koordinatensystem wird für die Positionierung von Barcodes auf PDFs verwendet?
IronBarcode verwendet ein pixelbasiertes Koordinatensystem, bei dem die x-Koordinate vom linken Rand der Seite und die y-Koordinate vom unteren Rand der Seite aus gemessen wird, wenn die Methode StampToExistingPdfPage verwendet wird.
Was sind häufige Anwendungsfälle für das Einprägen von Barcodes in bestehende PDFs?
Die PDF-Stempelfunktion von IronBarcode wird häufig verwendet, um eindeutige Tracking-Codes auf Versandetiketten, Chargennummern auf Fertigungsberichten, Dokumentenkontrollnummern auf Rechtsformularen und QR-Codes für die digitale Authentifizierung oder Schnellzugriffslinks hinzuzufügen.
Müssen beim Aufdrucken eines Barcodes auf eine PDF-Datei Zwischendateien gespeichert werden?
Nein, die StampToExistingPdfPage-Methode von IronBarcode stempelt den Barcode direkt auf das PDF-Dokument, ohne temporäre Dateien zu erstellen, was Verarbeitungszeit und Speicherplatz spart.
Kann ich Barcodes in passwortgeschützte PDF-Dokumente stempeln?
Ja, IronBarcode unterstützt das Stempeln von Barcodes auf passwortgeschützte PDFs. Geben Sie einfach das PDF-Passwort als optionalen Parameter in der Methode StampToExistingPdfPage an.

