Comment créer et estampiller les codes-barres dans des documents PDF en utilisant IronBarcode

Comment estampiller des BarCodes sur des PDF en utilisant C#35;

This article was translated from English: Does it need improvement?
Translated
View the article in English

Estampillez des codes-barres sur des documents PDF existants en C# à l'aide de la méthode CreateBarcode d'IronBarcode avec StampToExistingPdfPage pour les pages simples ou StampToExistingPdfPages pour les pages multiples, en spécifiant les coordonnées et les numéros de page.

comme-titre:2(Démarrage rapide : Tamponer un GeneratedBarcode sur une page PDF)

Cet exemple démontre la génération d'un code-barres à l'aide du CreateBarcode d'IronBarcode et son estampillage sur une page PDF existante. Fournissez le chemin d'accès au PDF, les coordonnées de position et le numéro de page.

Nuget IconCommencez dès maintenant à créer des PDF avec NuGet :

  1. Installez IronBarcode avec le gestionnaire de packages NuGet

    PM > Install-Package BarCode

  2. Copiez et exécutez cet extrait de code.

    IronBarCode.BarcodeWriter.CreateBarcode("https://my.site", IronBarCode.BarcodeEncoding.QRCode, 150, 150)
        .StampToExistingPdfPage("report.pdf", x: 50, y: 50, pageNumber: 1);
  3. Déployez pour tester sur votre environnement de production.

    Commencez à utiliser IronBarcode dans votre projet dès aujourd'hui grâce à un essai gratuit.
    arrow pointer

Comment estampiller un BarCode sur une page PDF existante?

<TODO : Ajouter une image ici -->

<Description : Diagramme ou capture d'écran illustrant le concept de code -->

Apart from exporting barcodes as PDF, IronBarcode enables stamping the GeneratedBarcode directly onto existing PDF documents. Cette fonctionnalité est utile pour ajouter des codes de suivi, des étiquettes d'inventaire ou des identifiants de documents à des rapports, factures ou formulaires existants. L'extrait de code suivant illustre cette tâche.

: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")
$vbLabelText   $csharpLabel

Quels sont les paramètres requis par StampToExistingPdfPage?

L'extrait de code appelle la méthode StampToExistingPdfPage() avec un objet GeneratedBarcode pour apposer l'objet sur le document PDF. Cette méthode offre une certaine flexibilité tout en restant simple. Les paramètres de la méthode sont indiqués ci-dessous :

  • pdfFilePath : Un System.String représentant le chemin du document PDF (relatif ou absolu).
  • x : Un System.Int32 pour la position horizontale en pixels à partir du bord gauche.
  • y : Un System.Int32 pour la position verticale en pixels à partir du bord inférieur.
  • pageNumber : Un System.Int32 indiquant la page (1-indexé, la première page est 1).
  • mot de passe : Un System.String pour les PDF protégés par un mot de passe (facultatif).

Quand dois-je utiliser StampToExistingPdfPage?

L'exécution de l'extrait de code tamponne le GeneratedBarcode directement dans le document PDF sans enregistrement intermédiaire. Cette méthode convient aux scénarios nécessitant :

  • Codes de suivi uniques sur les étiquettes d'expédition ou les documents de livraison
  • Numéros de lots sur les rapports de fabrication
  • Numéros de contrôle des documents sur les formulaires légaux ou réglementaires
  • Codes QR pour l'authentification numérique ou les liens d'accès rapide

L'approche de l'estampillage direct permet d'économiser du temps de traitement et d'éliminer les fichiers temporaires. For information on different barcode types, see the supported barcode formats guide.

Comment estampiller un BarCode sur plusieurs pages PDF?

<TODO : Ajouter une image ici -->

<Description : Diagramme ou capture d'écran illustrant le concept de code -->

Il arrive que le même BarCode doive être apposé sur plusieurs pages. Les utilisations courantes comprennent l'application d'identificateurs de documents à chaque page de rapports de plusieurs pages, l'ajout de codes de contrôle de version tout au long des documents techniques ou l'insertion de BarCode de sécurité sur chaque page de documents confidentiels. Au lieu de mettre en boucle la méthode de la page unique, utilisez la méthode StampToExistingPdfPages() de la classe GeneratedBarcode. L'extrait de code suivant illustre cette méthode.

: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")
$vbLabelText   $csharpLabel

Pour plus de flexibilité, utilisez LINQ pour générer des plages de pages de manière dynamique :

// 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");
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Quels sont les paramètres acceptés par StampToExistingPdfPages?

Les paramètres de la méthode sont indiqués ci-dessous :

  • pdfFilePath : Un System.String représentant le chemin du document PDF.
  • x : Un System.Int32 pour la position horizontale en pixels.
  • y : Un System.Int32 pour la position verticale en pixels.
  • pageNumbers : Un IEnumerable de pages à estampiller (1-indexé).
  • mot de passe : Un System.String pour les PDF protégés par un mot de passe (facultatif).

Pourquoi utiliser StampToExistingPdfPages au lieu de Looping?

Cette méthode permet d'apposer efficacement des codes-barres sur plusieurs pages sans itération manuelle, ce qui améliore la lisibilité du code et les performances. L'implémentation interne optimise le traitement des PDF, ce qui se traduit par :

  • Exécution plus rapide : PDF ouvert et traité une seule fois, et non plusieurs fois
  • Moindre utilisation de la mémoire : gestion efficace des ressources pour les PDF volumineux
  • Code plus propre : pas de gestion manuelle des boucles et des erreurs
  • Opérations atomiques : Toutes les pages sont estampillées en une seule opération

Techniques d'estampage avancées

<TODO : Ajouter une image ici -->

<Description : Diagramme ou capture d'écran illustrant le concept de code -->

Personnaliser l'apparence du BarCode avant l'estampillage

Avant d'apposer votre BarCode sur un PDF, personnalisez son apparence. 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);
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Travailler avec différents types de BarCodes

Différents scénarios nécessitent différents types de codes-barres. Les codes QR conviennent aux URL et aux grands ensembles de données, tandis que le Code128 convient aux identificateurs alphanumériques. 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);
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Gestion des erreurs et meilleures pratiques

Mettre en œuvre une gestion correcte des erreurs lors des opérations d'estampillage de PDF :

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
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Considérations de performance

Lorsque vous travaillez avec des PDF volumineux ou des opérations d'estampillage multiples, tenez compte des conseils suivants :

  1. Opérations par lots : Utilisez StampToExistingPdfPages() au lieu de la boucle StampToExistingPdfPage()
  2. Barcode Caching : Créez une fois et réutilisez l'objet GeneratedBarcode
  3. Calcul des coordonnées : Pré-calculer des coordonnées de position cohérentes
  4. Gestion de la mémoire : Traiter des PDF très volumineux par lots

For advanced scenarios involving reading barcodes from PDFs after stamping, see our guide on reading barcodes from PDF documents.

Intégration avec d'autres fonctionnalités d'IronBarcode

La fonctionnalité d'estampillage PDF fonctionne de manière transparente avec les autres fonctionnalités d'IronBarcode. Combine it with asynchronous processing for better web application performance:

// 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);
    });
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Additionally, leverage IronBarcode's image correction features when working with scanned PDFs that might need enhancement before or after barcode stamping.

Résolution des problèmes courants

Si vous rencontrez des problèmes lors de l'estampillage de codes-barres sur des PDF, voici des solutions :

  1. Coordonnées : Les coordonnées PDF partent du coin inférieur gauche et non du coin supérieur gauche
  2. PDF protégés par mot de passe : garantir un paramètre de mot de passe correct pour les PDF cryptés
  3. Large File Sizes: For optimization and handling tips, see our troubleshooting guide
  4. Font or Encoding Issues: For special characters or Unicode, check our writing Unicode barcodes guide

Le respect de ces directives et l'exploitation des capacités d'estampillage PDF d'IronBarcode permettent d'ajouter efficacement des codes-barres à des documents PDF existants tout en maintenant des performances élevées et une qualité de code élevée.

Questions Fréquemment Posées

Comment ajouter un BarCode à un document PDF existant en C# ?

Utilisez la méthode CreateBarcode d'IronBarcode pour générer un code-barres, puis appliquez la méthode StampToExistingPdfPage pour le placer sur votre PDF. Il suffit de spécifier le chemin d'accès au fichier PDF, les coordonnées de position (x, y) et le numéro de page où vous souhaitez que le code-barres apparaisse.

Quels sont les paramètres requis pour la méthode StampToExistingPdfPage ?

La méthode StampToExistingPdfPage d'IronBarcode nécessite : pdfFilePath (chaîne de caractères pour l'emplacement du PDF), des coordonnées x et y (entiers pour le positionnement en pixels), pageNumber (entier, indexé à 1), et un paramètre de mot de passe facultatif pour les PDF protégés.

Puis-je apposer le même BarCode sur plusieurs pages d'un PDF ?

Oui, IronBarcode fournit la méthode StampToExistingPdfPages (notez le pluriel " Pages ") qui vous permet d'apposer un seul code-barres généré sur plusieurs pages de votre document PDF.

Quel est le système de coordonnées utilisé pour positionner les codes-barres sur les PDF ?

IronBarcode utilise un système de coordonnées basé sur les pixels où la coordonnée x mesure à partir du bord gauche de la page, et la coordonnée y mesure à partir du bord inférieur de la page lors de l'utilisation de la méthode StampToExistingPdfPage.

Quels sont les cas d'utilisation courants pour l'estampillage de codes-barres sur des PDF existants ?

La fonction d'estampillage PDF d'IronBarcode est couramment utilisée pour ajouter des codes de suivi uniques aux étiquettes d'expédition, des numéros de lot sur les rapports de fabrication, des numéros de contrôle de documents sur les formulaires juridiques et des codes QR pour l'authentification numérique ou les liens d'accès rapide.

L'apposition d'un BarCode sur un PDF nécessite-t-elle l'enregistrement de fichiers intermédiaires ?

Non, la méthode StampToExistingPdfPage d'IronBarcode tamponne le code-barres directement sur le document PDF sans créer de fichiers temporaires, ce qui permet d'économiser du temps de traitement et de l'espace de stockage.

Puis-je apposer des codes-barres sur des documents PDF protégés par un mot de passe ?

Oui, IronBarcode prend en charge l'estampillage de codes-barres sur des PDF protégés par mot de passe. Il suffit de fournir le mot de passe du PDF en tant que paramètre facultatif dans la méthode StampToExistingPdfPage.

Hairil Hasyimi Bin Omar
Ingénieur logiciel
Comme tous les grands ingénieurs, Hairil est un apprenant avide. Il affine ses connaissances en C#, Python et Java, utilisant ces connaissances pour apporter de la valeur aux membres de l'équipe dans toute Iron Software. Hairil a rejoint l'équipe d'Iron Software depuis l'Université Teknologi MARA en Malaisie, ...
Lire la suite
Prêt à commencer?
Nuget Téléchargements 2,002,059 | Version : 2025.12 vient de sortir