IRONSOFTWAREHOME

Jak nakładać kody kreskowe na dokumenty PDF za pomocą C#

Hairil Hasyimi Bin Omar
Hairil Hasyimi Bin Omar
Updated: 4 czerwca 2026

Nałóż kody kreskowe na istniejące dokumenty PDF w C# przy użyciu metody CreateBarcode IronBarcode z StampToExistingPdfPage dla pojedynczych stron lub StampToExistingPdfPages dla wielu stron, określając współrzędne i numery stron.

Szybki start: Nałożenie wygenerowanego kodu kreskowego na stronę PDF

Ten przykład demonstruje generowanie kodu kreskowego za pomocą CreateBarcode IronBarcode i ich umieszczanie na istniejącej stronie PDF. Podaj ścieżkę do pliku PDF, współrzędne pozycji i numer strony.

  1. 1Install IronBarcode with NuGet Package Manager

    PM > Install-Package BarCode

  2. 2Skopiuj i uruchom ten fragment kodu.

    IronBarCode.BarcodeWriter.CreateBarcode("https://my.site", IronBarCode.BarcodeEncoding.QRCode, 150, 150)
        .StampToExistingPdfPage("report.pdf", x: 50, y: 50, pageNumber: 1);
    C#
  3. 3Wdrożenie do testowania w środowisku produkcyjnym

    Rozpocznij używanie IronBarcode w swoim projekcie już dziś z darmową wersją próbną
    arrow pointer

StampToExistingPdfPage StampToExistingPdfPages

Jak nałożyć kod kreskowy na istniejącą stronę PDF?

Oprócz eksportowania kodów kreskowych jako PDF, IronBarcode umożliwia bezpośrednie umieszczanie GeneratedBarcode na istniejących dokumentach PDF. Ta funkcja jest przydatna przy dodawaniu kodów śledzenia, etykiet inwentarzowych lub identyfikatorów dokumentów do istniejących raportów, faktur lub formularzy. Poniższy fragment kodu demonstruje to zadanie.

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");

Jakie parametry wymaga StampToExistingPdfPage?

StampToExistingPdfPage() GeneratedBarcode

Fragment kodu wywołuje metodę StampToExistingPdfPage z obiektem StampSettings, aby umieścić obiekt na dokumencie PDF. Ta metoda zapewnia elastyczność przy zachowaniu prostoty. Poniżej znajdują się parametry metody:

  • pdfFilePath: System.String reprezentujący ścieżkę dokumentu PDF (względną lub bezwzględną).
  • x: System.Int32 dla pozycji poziomej w pikselach od lewego brzegu.
  • y: System.Int32 dla pozycji pionowej w pikselach od dolnego brzegu.
  • pageNumber: System.Int32 wskazujący stronę (indeksowane od 1, pierwsza strona to 1).
  • password: System.String dla zabezpieczonych hasłem PDF (opcjonalnie).

Kiedy użyć StampToExistingPdfPage?

Uruchomienie fragmentu kodu umieszcza GeneratedBarcode bezpośrednio w dokumencie PDF bez zapisywania pośredniego. Ta metoda jest odpowiednia w scenariuszach wymagających:

StampToExistingPdfPages() GeneratedBarcode

  • Unikalnych kodów śledzenia na etykietach wysyłkowych lub dokumentach dostawy
  • Numerów partii na raportach produkcyjnych
  • Numerów kontrolnych dokumentów na formularzach prawnych lub regulacyjnych
  • Kodów QR dla cyfrowej autoryzacji lub szybkiego dostępu

Bezpośrednie nakładanie oszczędza czas przetwarzania i eliminuje pliki tymczasowe. Dla informacji o różnych typach kodów kreskowych zobacz przewodnik obsługiwane formaty kodów kreskowych.

Jak nałożyć kod kreskowy na wiele stron PDF?

Czasami ten sam kod kreskowy musi być nałożony na wiele stron. Typowe zastosowania obejmują stosowanie identyfikatorów dokumentów na każdej stronie wielostronicowych raportów, dodawanie kodów kontroli wersji w całych dokumentach technicznych lub wstawianie kodów bezpieczeństwa na każdej stronie materiałów poufnych. Zamiast pętli metody jednopunktowej, użyj metody StampToExistingPdfPages z klasy BarcodeStamper. Poniższy fragment kodu demonstruje tę metodę.

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");

Dla elastyczności, użyj LINQ do dynamicznego generowania zakresów stron:

// 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");

Jakie parametry akceptuje StampToExistingPdfPages?

Poniżej znajdują się parametry metody:

  • pdfFilePath: System.String reprezentujący ścieżkę dokumentu PDF.
  • x: System.Int32 dla pozycji poziomej w pikselach.
  • y: System.Int32 dla pozycji pionowej w pikselach.
  • pageNumbers: IEnumerable<System.Int32> stron do umieszczenia (indeksowane od 1).
  • password: System.String dla zabezpieczonych hasłem PDF (opcjonalnie).

StampToExistingPdfPages() StampToExistingPdfPage() GeneratedBarcode

Dlaczego używać StampToExistingPdfPages zamiast pętli?

Ta metoda zapewnia efektywne nakładanie kodów kreskowych na wiele stron bez ręcznej iteracji, poprawiając czytelność kodu i wydajność. Wewnętrzna implementacja optymalizuje przetwarzanie PDF, prowadząc do:

  • Szybszego wykonania: PDF otwierany i przetwarzany raz, a nie wielokrotnie
  • Mniejszego zużycia pamięci: Efektywne zarządzanie zasobami dla dużych plików PDF
  • Prostszego kodu: Brak ręcznej obsługi pętli i błędów
  • Operacje atomowe: Wszystkie strony nałożone w jednej operacji

Zaawansowane techniki nakładania

Dostosowanie wyglądu kodu kreskowego przed nałożeniem

Przed nałożeniem swojego kodu kreskowego na PDF, dostosuj jego wygląd. IronBarcode oferuje rozległe opcje dostosowywania:

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.ChangeBarCodeColor(IronSoftware.Drawing.Color.DarkBlue);

// Now stamp the customized barcode
myBarcode.StampToExistingPdfPage("invoice.pdf", x: 450, y: 700, pageNumber: 1);
C#

Praca z różnymi typami kodów kreskowych

Różne scenariusze wymagają różnych typów kodów kreskowych. Kody QR nadają się do URL-i i dużych zbiorów danych, podczas gdy Code128 działa dla alfanumerycznych identyfikatorów. Dowiedz się więcej o tworzeniu kodów QR lub zgłęb inne formaty:

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

Obsługa błędów i najlepsze praktyki

Wprowadzić odpowiednią obsługę błędów podczas pracy z operacjami nakładania kodu na 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
}

Rozważania dotyczące wydajności

Podczas pracy z dużymi plikami PDF lub wieloma operacjami nakładania, rozważ te wskazówki:

  1. Operacje seryjne: Użyj StampToExistingPdfPages zamiast pętli StampToExistingPdfPage
  2. Buforowanie kodów kreskowych: Utwórz raz i ponownie użyj obiektu GeneratedBarcode
  3. Obliczanie współrzędnych: Wstępnie obliczyć spójne współrzędne pozycji
  4. Zarządzanie pamięcią: Przetwarzać bardzo duże pliki PDF w partiach

Dla zaawansowanych scenariuszy obejmujących odczytywanie kodów kreskowych z PDF po nałożeniu, zobacz nasz przewodnik o odczytywaniu kodów kreskowych z dokumentów PDF.

Integracja z innymi funkcjami IronBarcode

Funkcjonalność nakładania PDF działa bezproblemowo z innymi funkcjami IronBarcode. Połącz to z przetwarzaniem asynchronicznym dla lepszej wydajności aplikacji webowych:

// 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);
    });
}

Dodatkowo, skorzystaj z funkcji korekcji obrazu IronBarcode podczas pracy ze skanowanymi PDF, które mogą wymagać poprawy przed lub po nałożeniu kodu kreskowego.

Rozwiązywanie typowych problemów

Jeśli napotkasz problemy podczas nakładania kodów kreskowych na PDF, oto rozwiązania:

  1. Problemy z współrzędnymi: Współrzędne PDF zaczynają się od lewego dolnego rogu, nie od lewego górnego
  2. Chronione hasłem PDF: Upewnij się o poprawności parametru hasła dla zaszyfrowanych plików PDF
  3. Duże rozmiary plików: Dla wskazówek dotyczących optymalizacji i obsługi, zobacz nasz przewodnik rozwiązywania problemów
  4. Problemy z czcionką lub kodowaniem: Dla specjalnych znaków lub Unicode, sprawdź nasz przewodnik pisania kodów kreskowych Unicode

Przestrzeganie tych wytycznych oraz wykorzystanie możliwości nakładania PDF IronBarcode umożliwia efektywne dodawanie kodów kreskowych do istniejących dokumentów PDF przy zachowaniu wysokiej wydajności i jakości kodu.

Często Zadawane Pytania

Jak dodać kod kreskowy do istniejącego dokumentu PDF w C#?

Użyj metody CreateBarcode IronBarcode do wygenerowania kodu kreskowego, a następnie zastosuj metodę StampToExistingPdfPage, aby umieścić go na swoim PDF-ie. Po prostu określ ścieżkę pliku PDF, współrzędne pozycji (x, y) oraz numer strony, na której ma się pojawić kod kreskowy.

Jakie parametry są wymagane dla metody StampToExistingPdfPage?

Metoda StampToExistingPdfPage w IronBarcode wymaga: pdfFilePath (łańcuch dla lokalizacji PDF), współrzędnych x i y (liczby całkowite dla pozycjonowania w pikselach), pageNumber (liczba całkowita, indeks początkowy 1) oraz opcjonalnego parametru hasła dla chronionych PDF-ów.

Czy mogę umieścić ten sam kod kreskowy na wielu stronach PDF?

Tak, IronBarcode udostępnia metodę StampToExistingPdfPages (zwróć uwagę na liczbę mnogą 'Pages'), która pozwala na umieszczenie wygenerowanego kodu kreskowego na kilku stronach w dokumencie PDF.

Jaki system współrzędnych jest używany do pozycjonowania kodów kreskowych na PDF-ach?

IronBarcode używa systemu współrzędnych opartego na pikselach, gdzie współrzędna x jest mierzona od lewej krawędzi strony, a współrzędna y od dolnej krawędzi strony przy użyciu metody StampToExistingPdfPage.

Jakie są typowe zastosowania umieszczania kodów kreskowych na istniejących PDF-ach?

Funkcja umieszczania kodów IronBarcode jest powszechnie używana do dodawania unikalnych kodów śledzących do etykiet wysyłkowych, numerów partii w raportach produkcyjnych, numerów kontrolnych dokumentów w formularzach prawnych oraz kodów QR do cyfrowej autoryzacji lub szybkiego dostępu do linków.

Czy umieszczenie kodu kreskowego na PDF-ie wymaga zapisywania plików pośrednich?

Nie, metoda StampToExistingPdfPage IronBarcode umieszcza kod kreskowy bezpośrednio na dokumencie PDF bez tworzenia plików tymczasowych, co oszczędza czas przetwarzania i przestrzeń dyskową.

Czy mogę umieścić kody kreskowe na dokumentach PDF chronionych hasłem?

Tak, IronBarcode wspiera umieszczanie kodów kreskowych na PDF-ach chronionych hasłem. Wystarczy podać hasło PDF jako opcjonalny parametr w metodzie StampToExistingPdfPage.

Why should you use the StampToExistingPdfPages method instead of looping for multiple pages?

The `StampToExistingPdfPages` method is preferred for stamping on multiple pages because it is more efficient, reduces processing time, and optimizes resource usage compared to manually looping through pages.

Are there performance considerations when stamping barcodes on large PDFs with IronBarcode?

Yes, when stamping barcodes on large PDFs, it's recommended to use batch operations, cache barcodes, and manage memory efficiently for better performance with IronBarcode.

What should be done if a barcode stamping operation fails in IronBarcode?

If a barcode stamping operation fails, implement error handling using `try-catch` blocks to log errors and ensure that the PDF file exists before stamping with IronBarcode.

Gotowy, aby rozpocząć?

Nuget Downloads 2,422,100Wersja:2026.9właśnie wydany

Odbierz swój BEZPŁATNY

30-dniowy klucz próbny natychmiast.

bullet_checkedNie wymaga karty kredytowej ani tworzenia konta
test_punktorówTestuj w produkcji
bez znaków wodnych
kalendarz_punktorów30 dni w pełni
funkcjonalny produkt
wsparcie_punktorów24/5 wsparcie techniczne
w trakcie okresu próbnego
Otrzymaj swój darmowy Klucz Próbny na 30 dni natychmiast.
Nie wymaga karty kredytowej ani tworzenia konta
Biblioteka C# NuGet dla plików PDF
Zainstaluj za pomocą NuGet

Wersja: 2026.9

PM > Install-Package BarCode
nuget.org/packages/BarCode/
  1. W Eksploratorze Rozwiązań, kliknij prawym przyciskiem Myszy na Odwołania, Zarządzaj pakietami NuGet
  2. Wybierz Przeglądaj i wyszukaj "IronBarCode"
  3. Wybierz pakiet i zainstaluj
DLL PDF dla C#
Pobierz DLL

Wersja: 2026.9

  1. Pobierz i rozpakuj IronBarCode do lokalizacji, takiej jak ~/Libs w katalogu Twojego rozwiązania
  2. W Eksploratorze Rozwiązań Visual Studio kliknij prawym przyciskiem Referencje. Wybierz Przeglądaj, "IronBarCode.dll"

Licencje od $999

Key in blue circle

Uzyskaj natychmiast swój darmowy 30-dniowy Klucz Testowy.

Your trial license will be sent to your email address

Brak ograniczeń. 100% dostępności. Bez karty kredytowej.

bullet_checkedNie wymaga karty kredytowej ani tworzenia kontaBrak ograniczeń. 100% dostępności. Bez karty kredytowej.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Zarezerwuj swoje darmowe Demo na żywo
Booking Badge

Zaufane przez miliony inżynierów na całym świecie

Logotypy klientów Iron Software
Otrzymaj swoje Konsultacja Bez Zobowiązań
Wypełnij poniższy formularz lub wyślij e-mail na sales@ironsoftware.com
Twoje dane zawsze będą utrzymywane w tajemnicy.
Zaufane przez miliony inżynierów na całym świecie
Logotypy klientów Iron Software
Otrzymaj swój darmowy Klucz Próbny na 30 dni natychmiast.
Nie wymaga karty kredytowej ani tworzenia konta