C# Kullanarak Barkodları PDF'lere Nasıl Damgalarım
IronBarcode'un CreateBarcode yöntemini kullanarak, tek sayfalar için StampToExistingPdfPage veya birden fazla sayfa için StampToExistingPdfPages ile koordinatları ve sayfa numaralarını belirterek, mevcut PDF belgelerine C# ile BarCode'lar ekleyin.
Hızlı Başlangıç: Bir GeneratedBarcode'yi PDF Sayfasına Damga Yapın
Bu örnek, IronBarcode'un CreateBarcode işlevini kullanarak bir BARCODE oluşturmayı ve bunu mevcut bir PDF sayfasına damgalamayı göstermektedir. PDF yolunu, konum koordinatlarını ve sayfa numarasını sağlayın.
-
IronBarcode aşağıdaki NuGet Paket Yöneticisi ile yükleyin
PM > Install-Package BarCode -
Bu kod parçacığını kopyalayın ve çalıştırın.
IronBarCode.BarcodeWriter.CreateBarcode("https://my.site", IronBarCode.BarcodeEncoding.QRCode, 150, 150) .StampToExistingPdfPage("report.pdf", x: 50, y: 50, pageNumber: 1); -
Canlı ortamınızda test için dağıtım yapın
Ücretsiz deneme ile bugün projenizde IronBarcode kullanmaya başlayın
StampToExistingPdfPage
StampToExistingPdfPages
Asgari İş Akışı (5 adım)
- PDF'ye barkod damgalamak için C# kütüphanesini indirin
- Belirtilen barkod türü ve değeriyle bir barkod oluşturun
- Barkod boyutunu belirleyin
- Barkodu tek PDF sayfasına damga yapmak için
StampToExistingPdfPageyöntemini kullanın - Barkodu çok sayfalı PDF'lere damga yapmak için
StampToExistingPdfPagesyöntemini kullanın
Mevcut Bir PDF Sayfasına Bir Barkod Nasıl Damga Yaparım?
IronBarcode, BarCodes'i PDF olarak dışa aktarmanın yanı sıra, GeneratedBarcode kodunu mevcut PDF belgelerine doğrudan damgalamayı da sağlar. Bu özellik, mevcut raporlar, faturalar veya formlara takip numaraları, envanter etiketleri veya dökümantasyon kimlikleri eklemek için uygundur. Aşağıdaki kod parçacığı bu görevi gösterir.
: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")
StampToExistingPdfPage hangi parametreleri gerektirir?
StampToExistingPdfPage()
GeneratedBarcode
Kod parçacığı, nesneyi PDF belgesine damgalamak için StampToExistingPdfPage yöntemini bir StampSettings nesnesiyle çağırır. Bu yöntem sadeliğini korurken esneklik sağlar. Aşağıda yöntem parametreleri verilmiştir:
pdfFilePath: PDF belgesinin yolunu (göreceli veya mutlak) temsil eden bir System.String.x: Sol kenardan itibaren piksel cinsinden yatay konum için bir System.Int32.y: Alt kenardan itibaren piksel cinsinden dikey konum için bir System.Int32.pageNumber: Sayfayı belirten bir System.Int32 (1'den başlayan indeksleme, ilk sayfa 1'dir).password: Parola korumalı PDF'ler için bir System.String (isteğe bağlı).
Ne zaman StampToExistingPdfPage kullanmalıyım?
Kod parçacığını çalıştırmak, ara kaydetme yapmadan GeneratedBarcode etiketini doğrudan PDF belgesine ekler. Bu yöntem, aşağıdaki senaryolar için uygundur:
StampToExistingPdfPages()
GeneratedBarcode
- Gönderi etiketleri veya teslimat belgeleri üzerine benzersiz takip kodları
- Üretim raporlarına parti numaraları
- Hukuki veya düzenleyici formlar üzerinde belge kontrol numaraları
- Dijital kimlik doğrulama veya hızlı erişim bağlantıları için QR kodları
Doğrudan damga yaklaşımları işlem süresinden tasarruf sağlar ve geçici dosyaları ortadan kaldırır. Farklı barkod türleri hakkında bilgi için desteklenen barkod formatları kılavuzuna bakın.
Çoklu PDF Sayfalarına Bir Barkod Nasıl Damga Yaparım?
Bazen aynı barkodun birden fazla sayfaya damgalanması gerekir. Yaygın kullanım alanları arasında çok sayfalı raporların her sayfasına belge tanımlayıcıları eklemek, teknik belgelerin her yerine sürüm kontrol kodları eklemek veya gizli materyallerin her sayfasına güvenlik barkodları yerleştirmek bulunmaktadır. Tek sayfa yöntemini döngüye sokmak yerine, BarcodeStamper sınıfındaki StampToExistingPdfPages yöntemini kullanın. Aşağıdaki kod parçası bu yöntemi göstermektedir.
: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")
Esneklik için, sayfa aralıklarını dinamik olarak oluşturmak üzere LINQ kullanın:
// 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")
StampToExistingPdfPages Hangi Parametreleri Kabul Eder?
Aşağıda yöntem parametreleri verilmiştir:
pdfFilePath: PDF belgesinin yolunu temsil eden bir System.String.x: Pikseller cinsinden yatay konum için bir System.Int32.y: Dikey konumun piksel cinsinden değeri için bir System.Int32.pageNumbers: Damgalanacak sayfaların IEnumerable</system.int32> dizisi (1'den başlayan indeksli).password: Parola korumalı PDF'ler için bir System.String (isteğe bağlı).
StampToExistingPdfPages()
StampToExistingPdfPage()
GeneratedBarcode
Döngüyü Kullanmak Yerine StampToExistingPdfPages Neden Kullanılır?
Bu yöntem, manuel yineleme olmadan çok sayfalı etkili barkod damgalama sağlar, kod okunabilirliğini ve performansını artırır. Dahili uygulama, PDF işlemesini optimize ederek şu sonuçları doğurur:
- Daha hızlı yürütme: PDF bir kez açılır ve işlenir, birden fazla kez değil
- Daha düşük bellek kullanımı: Büyük PDF'ler için verimli kaynak yönetimi
- Daha temiz kod: Manuel döngü ve hata yönetimi gerektirmez
- Atomik işlemler: Tüm sayfalar tek bir işlemde damgalanır
İleri Damgalama Teknikleri
Barkod Görünümünü Damgalamadan Önce Özelleştirme
Barkodunuzu bir PDF'ye damgalamadan önce görünümünü özelleştirin. IronBarcode, kapsamlı özelleştirme seçenekleri sunar:
GeneratedBarcode myBarcode = BarcodeWriter.CreateBarcode("INVOICE-2024-001", BarcodeEncoding.Co/de128, 250, 80);
// Customize the appearance
myBarcode.AddAnnotationTextAboveBarcode("Invoice Number");
myBarcode.AddAnnotationTextBelowBarcode("Scan for digital copy");
myBarcode.SetMargins(10);
myBarcode.ChangeBarcodeForegroundColor(System.Drawing.Co/lor.DarkBlue);
// Now stamp the customized barcode
myBarcode.StampToExistingPdfPage("invoice.pdf", x: 450, y: 700, pageNumber: 1);
GeneratedBarcode myBarcode = BarcodeWriter.CreateBarcode("INVOICE-2024-001", BarcodeEncoding.Co/de128, 250, 80);
// Customize the appearance
myBarcode.AddAnnotationTextAboveBarcode("Invoice Number");
myBarcode.AddAnnotationTextBelowBarcode("Scan for digital copy");
myBarcode.SetMargins(10);
myBarcode.ChangeBarcodeForegroundColor(System.Drawing.Co/lor.DarkBlue);
// Now stamp the customized barcode
myBarcode.StampToExistingPdfPage("invoice.pdf", x: 450, y: 700, pageNumber: 1);
Imports System.Drawing
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(Color.DarkBlue)
' Now stamp the customized barcode
myBarcode.StampToExistingPdfPage("invoice.pdf", x:=450, y:=700, pageNumber:=1)
Farklı Barkod Türleriyle Çalışma
Farklı senaryolar farklı barkod türleri gerektirir. QR kodları URL'ler ve büyük veri setleri için uygundur, Code128 ise alfanümerik tanımlayıcılar için çalışır. QR kodları oluşturma hakkında daha fazla bilgi edinin veya diğer formatları keşfedin:
// 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)
Hata Yönetimi ve En İyi Uygulamalar
PDF damgalama işlemleriyle çalışırken uygun hata yönetimini uygulayın:
try
{
GeneratedBarcode myBarcode = BarcodeWriter.CreateBarcode("DOCUMENT-ID-12345",
BarcodeEncoding.Co/de128, 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.Co/de128, 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
Performans Hususları
Büyük PDF'lerle veya birden fazla damgalama işlemiyle çalışırken şu ipuçlarını göz önünde bulundurun:
- Toplu İşlemler: Döngü yerine
StampToExistingPdfPageskullanınStampToExistingPdfPage - BarCode Önbellekleme:
GeneratedBarcodenesnesini bir kez oluşturun ve yeniden kullanın - Koordinat Hesaplama: Tutarlı pozisyon koordinatlarını önceden hesaplayın
- Bellek Yönetimi: Çok büyük PDF'leri parçalara ayırarak işleyin
Damgalamadan sonra PDF'lerden barkod okuma içeren ileri senaryolar için, PDF belgelerinden barkod okuma rehberimize bakın.
Diğer IronBarcode Özellikleriyle Entegrasyon
PDF damgalama işlevi, diğer IronBarcode özellikleriyle sorunsuz bir şekilde çalışır. Web uygulaması performansını artırmak için asenkron işlem ile birleştirin.
// 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
Ayrıca, tarama yapılmış ve barkod damgalanmasından önce ya da sonra geliştirilmesi gereken PDF'lerle çalışırken IronBarcode'un resim düzeltme özelliklerini kullanın.
Yaygın Sorunları Giderme
Eğer PDF'ler üzerine barkod damgalarken sorunlarla karşılaşırsanız, işte çözümler:
- Koordinat Sorunları: PDF koordinatları sol alt köşeden başlar, sol üstten değil
- Şifre Korumalı PDF'ler: Şifre korumalı PDF'ler için doğru şifre parametresini sağladığınızdan emin olun
- Büyük Dosya Boyutları: Optimizasyon ve işlemler için öneriler için, sorun giderme rehberimize bakın
- Font veya Kodlama Sorunları: Özel karakterler veya Unicode için, Unicode barkod yazma rehberimize göz atın
Bu kılavuzları takip ederek ve IronBarcode'un PDF damgalama yeteneklerinden yararlanarak, mevcut PDF belgelerine etkili barkod ekleyebilirsiniz; bu yüksek performans ve kod kalitesini korur.
Sıkça Sorulan Sorular
C#'ta mevcut bir PDF belgesine nasıl barkod eklerim?
IronBarcode'un CreateBarcode metodunu kullanarak bir barkod oluşturun, ardından StampToExistingPdfPage metodunu kullanarak bunu PDF'nize yerleştirin. Barkodun görünmesini istediğiniz PDF dosya yolunu, pozisyon koordinatlarını (x, y) ve sayfa numarasını belirtin.
StampToExistingPdfPage metodu için hangi parametreler gereklidir?
IronBarcode içindeki StampToExistingPdfPage metodu aşağıdakileri gerektirir: pdfFilePath (PDF'nin konumu için dize), x ve y koordinatları (piksel ile pozisyonlandırma için tamsayılar), pageNumber (tamsayı, 1-indeksli) ve korumalı PDF'ler için isteğe bağlı bir parola parametresi.
Bir PDF'nin birden fazla sayfasına aynı barkodu damgalayabilir miyim?
Evet, IronBarcode, PDF belgenizdeki birden fazla sayfaya tek bir üretilen barkodu damgalamanıza olanak tanıyan StampToExistingPdfPages metodunu (çoğul 'Pages' ile dikkat edin) sağlar.
Barkodları PDF'lerde pozisyonlandırmak için hangi koordinat sistemi kullanılır?
IronBarcode, StampToExistingPdfPage metodu kullanılırken, x koordinatının sayfanın sol kenarından, y koordinatının sayfanın alt kenarından ölçüldüğü piksel tabanlı bir koordinat sistemi kullanır.
Mevcut PDF'lere barkod damgalamak için yaygın kullanım senaryoları nelerdir?
IronBarcode'un PDF damgalama özelliği, gönderim etiketlerine benzersiz izleme kodları, üretim raporlarına toplu numaralar, yasal formlara doküman kontrol numaraları ve dijital kimlik doğrulama veya hızlı erişim linkleri için QR kodları eklemek için yaygın olarak kullanılır.
Bir PDF'ye barkod damgalamak ara dosyalar kaydetmeyi gerektirir mi?
Hayır, IronBarcode'un StampToExistingPdfPage metodu barkodu doğrudan PDF belgesine damgalar, bu da işlem süresinden ve depolama alanından tasarruf sağlar.
Parola korumalı PDF belgelerine barkod damgalayabilir miyim?
Evet, IronBarcode, parola korumalı PDF'lere barkod damgalamayı destekler. StampToExistingPdfPage metodunda PDF parolasını isteğe bağlı bir parametre olarak belirtmeniz yeterlidir.
IronBarcode, iş süreçlerindeki verimliliği artırmaya nasıl yardımcı olabilir?
IronBarcode, hızlı ve doğru barkod üretimi ve okuma yeteneği sağlayarak, manuel veri girişi hatalarını azaltır ve envanter ile varlık takibini iyileştirerek iş süreçlerinin verimliliğini artırır.
Bir projede IronBarcode'u uygulamak için hangi programlama becerileri gereklidir?
IronBarcode'u bir projede uygulamak için temel C# programlama bilgisi yeterlidir, çünkü bu kütüphane, geliştiricilere rehberlik eden basit yöntemler ve kapsamlı belgeler sağlar.
IronBarcode, hem küçük projeler hem de büyük kurumsal uygulamalar için uygun mu?
IronBarcode, küçük projeler kadar geniş çaplı kurumsal uygulamalar için de uygun, ölçeklenebilir ve çok yönlü olacak şekilde tasarlanmıştır ve sağlam barkod çözümleri gerektiren uygulamalara hizmet eder.

