C# Kullanarak iTextSharp'ta PDF'ye Sayfa Numaraları Nasıl Eklenir?
Full Comparison
Looking for a detailed feature-by-feature breakdown? See how IronPDF stacks up against Itext on pricing, HTML support, and licensing.
"Taşınabilir Belge Formatı" veya PDF, Adobe tarafından oluşturulmuş bir dosya formatıdır. PDF'ler metin ve görüntülerin tutarlı şekilde formatlanması gerektiğinde belgeleri sunarken oldukça kullanışlıdır. Günümüz dünyasında, PDF dosyaları oldukça önemlidir ve tüm kurumsal sektörlerde belge oluşturma ve faturalandırmada kullanılmaktadır. Şu anda piyasada olan birkaç PDF kütüphanesi sayesinde, PDF oluşturma neredeyse içgüdüsel hale gelmiştir. Projeniz için kullanmadan önce sizin için uygun PDF kütüphanesini seçmek amacıyla her birinin fayda ve özelliklerini değerlendirmek önemlidir.
Bu makalede, iTextSharp C# kullanarak PDF'ye sayfa numaralarını nasıl ekleyeceğimizi göreceğiz. Ayrıca iTextSharp ile IronPDF'yi karşılaştıracağız.
iTextSharp C# kullanarak PDF'ye Sayfa Numaraları Ekleme
- Herhangi bir IDE kullanarak yeni bir C# projesi oluşturun.
- Yeni bir PDF nesnesi oluşturun.
- HTML alt başlığına sayfa numaraları ekleyin.
- HTML içeriğinden bir PDF oluşturun.
- PDF dosyasını bilgisayarınıza kaydedin.
IronPDF Nedir
IronPDF, geliştiricilerin kolayca PDF oluşturmak, görüntülemek ve düzenlemek için kullandığı sağlam bir PDF .NET Framework'dür. IronPDF, içsel olarak bir krom motoru üzerinde çalışan gelişmiş bir araçtır. HTML5, JavaScript, CSS ve görüntü dosyalarını PDF'ye dönüştürebilir, özel Başlıklar ve Alt Bilgiler ekleyebilir ve PDF'leri tarayıcıda göründüğü gibi tam olarak üretebilir. HTML, ASPX, Razor View ve MVC dahil olmak üzere birçok çevrimiçi ve net formatı, IronPDF tarafından desteklenir.
IronPDF Özellikleri
- .NET C# kodunu kullanarak PDF dosyalarını oluşturma, okuma ve kolayca düzenleme.
- Kullanıcı Temsilcileri, Proxyler, Çerezler, HTTP başlıkları ve forma değişkenlerini yönetirken, HTML giriş formlarını kullanarak oturum açmayı etkinleştiren bir web sitesi URL'sinden PDF oluşturma.
- Mevcut PDF dosyalarından görüntü çıkarma.
- PDF içeriğine öğeler ekleme: tablo, metin, görüntüler, yer imleri, filigranlar, başlıklar, altbilgiler ve daha fazlası.
- Birden fazla PDF belgelerinden sayfaları kolaylıkla bölme ve birleştirme yeteneği.
IronPDF dökümantasyonu hakkında daha fazlasını öğrenmek için buraya bakın.
IronPDF Kurulumu
Visual Studio Araçları içinde NuGet Paket Yöneticisini seçin ve Araçlar altında Visual Komut Satırı arabirimini bulabilirsiniz. Aşağıdaki komut, paket yönetimi terminal sekmesine girilmelidir.
Install-Package IronPdf
Veya Paket yöneticisi yöntemini kullanabiliriz. Paketi doğrudan çözüm içine yüklemek Visual Studio'nun NuGet Paket Yöneticisi seçeneği ile mümkündür. NuGet websitesinde paketleri bulmak için bir arama kutusu mevcuttur. Aşağıdaki ekran görüntüsünde görüldüğü gibi, paket yöneticisinde yalnızca 'IronPDF' aramamız yeterli:

Yukarıdaki resimde ilgili arama sonuçları listesi gösteriliyor. Paketin sisteminize yüklenmesi için gerekli seçimleri yapın.
Paket şimdi indirildi ve yüklendi olduğuna göre, mevcut projede kullanılabilir.
iTextSharp Nedir
iTextSharp, C#'ta PDF belgeleri üretmek ve değiştirmek için esnek bir kütüphanedir. Şifreleme, PDF birleştirme, metin ve görüntü çıkarım gibi birçok özellik sunar. iTextSharp, PDF'lere sayfa numarası eklemek gibi birçok görev için etkili bir araçtır.
iTextSharp Özellikleri
- Bir API aracılığıyla PDF belgeleri oluşturmak için iText kütüphanesi kullanılabilir.
- iText programı ile hem HTML hem de XML dizeleri PDF dosyalarına dönüştürülebilir.
- iText kütüphanesi ile PDF belgelerimize yer imleri, sayfa numaraları ve işaretleyiciler ekleyebiliriz.
- iText kütüphanesi kullanarak bir PDF belgesini birkaç PDF'ye bölebilir veya birden fazla PDF belgesini tek bir PDF'de birleştirebiliriz.
- iText ile PDF formlarını değiştirebiliriz.
iTextSharp Yükleme
NuGet paket yöneticisini kullanarak iText'i arayın. iText işlevsellikleri birçok pakete ayrıldığından, iText7 ve iText.pdfhtml yüklenmesi gerekir.
Visual Komut Satırı arabirimini seçerseniz, aşağıdaki paketlerin yüklenmesi gerekir:
Install-Package iText7
Install-Package itext7.pdfhtml
Install-Package iText7
Install-Package itext7.pdfhtml
iText 7 en son sürüm olduğundan, çözümümüzde kullandığımız budur.
Sayfa Numaralarını Eklemek için IronPDF Kullanma
IronPDF'in kapsamlı kütüphanesi sayesinde PDF dosyalarına sayfa numaraları eklemek basit hale getirilmiştir. Örnek olarak, aşağıdaki kodu inceleyin:
using IronPdf;
class Program
{
static void Main(string[] args)
{
// Initialize the IronPdf renderer
var renderer = new IronPdf.HtmlToPdf();
// HTML content to convert to PDF
string header = "<h1>Hello Ironpdf!</h1>";
// Render the HTML content to PDF
PdfDocument pdf = renderer.RenderHtmlAsPdf(header);
// Define the footer with page number placeholders
HtmlHeaderFooter htmlFooter = new HtmlHeaderFooter
{
HtmlFragment = "<center><i>{page} of {total-pages}</i></center>"
};
// Add footer to the PDF
pdf.AddHtmlFooters(htmlFooter);
// Save the output PDF file
pdf.SaveAs("output.pdf");
}
}
using IronPdf;
class Program
{
static void Main(string[] args)
{
// Initialize the IronPdf renderer
var renderer = new IronPdf.HtmlToPdf();
// HTML content to convert to PDF
string header = "<h1>Hello Ironpdf!</h1>";
// Render the HTML content to PDF
PdfDocument pdf = renderer.RenderHtmlAsPdf(header);
// Define the footer with page number placeholders
HtmlHeaderFooter htmlFooter = new HtmlHeaderFooter
{
HtmlFragment = "<center><i>{page} of {total-pages}</i></center>"
};
// Add footer to the PDF
pdf.AddHtmlFooters(htmlFooter);
// Save the output PDF file
pdf.SaveAs("output.pdf");
}
}
Imports IronPdf
Friend Class Program
Shared Sub Main(ByVal args() As String)
' Initialize the IronPdf renderer
Dim renderer = New IronPdf.HtmlToPdf()
' HTML content to convert to PDF
Dim header As String = "<h1>Hello Ironpdf!</h1>"
' Render the HTML content to PDF
Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf(header)
' Define the footer with page number placeholders
Dim htmlFooter As New HtmlHeaderFooter With {.HtmlFragment = "<center><i>{page} of {total-pages}</i></center>"}
' Add footer to the PDF
pdf.AddHtmlFooters(htmlFooter)
' Save the output PDF file
pdf.SaveAs("output.pdf")
End Sub
End Class
Açıklama
- Render Erkekleme: HTML'den PDF'ye dönüştürme özelliği sağlayan
HtmlToPdförneğini oluşturuyoruz. - HTML İçeriğini Belirleme: PDF'ye dönüştürülmesi gereken HTML içeriği belirtilir.
- HTML İçeriğini Render Etme: HTML'yi bir PDF belgesine dönüştürmek için
RenderHtmlAsPdffonksiyonu kullanılır. - Altbilgi Tanımlama: Sayfa numaraları, HTML altbilgi metninde yer tutucular olarak temsil edilir.
- Altbilgiyi Ekle ve PDF'yi Kaydet: Belgeye altbilgi uygulayın ve bir PDF dosyası olarak kaydedin.

IronPDF kodu hakkında daha fazla bilgi edinmek için buraya bakın.
iTextSharp Kullanarak Sayfa Numaraları Ekleme
Öncelikle, iTextSharp kullanarak yeni bir PDF belgesi oluşturalım. İşte sayfa numaraları ile yeni bir PDF belgesi yapmanın basit bir örneği:
using System.IO;
using iTextSharp.text;
using iTextSharp.text.pdf;
namespace ConsoleApp1
{
internal class Program
{
static void Main(string[] args)
{
// Create a new PDF document
Document document = new Document();
PdfWriter writer = PdfWriter.GetInstance(document, new FileStream("output.pdf", FileMode.Create));
// Open the document to add content
document.Open();
document.Add(new Paragraph("Hello, world!"));
// Attach page number event to PDF writer
writer.PageEvent = new PageNumberEventHandler();
// Close the document
document.Close();
}
}
public class PageNumberEventHandler : PdfPageEventHelper
{
public override void OnEndPage(PdfWriter writer, Document document)
{
base.OnEndPage(writer, document);
// Create a table for the page number
PdfPTable table = new PdfPTable(1);
table.TotalWidth = 300f;
table.HorizontalAlignment = Element.ALIGN_CENTER;
// Add page number to the table cell
PdfPCell cell = new PdfPCell(new Phrase($"Page {writer.PageNumber}"));
cell.Border = 0;
table.AddCell(cell);
// Write the table at the bottom of the page
table.WriteSelectedRows(0, -1, 150, document.Bottom, writer.DirectContent);
}
}
}
using System.IO;
using iTextSharp.text;
using iTextSharp.text.pdf;
namespace ConsoleApp1
{
internal class Program
{
static void Main(string[] args)
{
// Create a new PDF document
Document document = new Document();
PdfWriter writer = PdfWriter.GetInstance(document, new FileStream("output.pdf", FileMode.Create));
// Open the document to add content
document.Open();
document.Add(new Paragraph("Hello, world!"));
// Attach page number event to PDF writer
writer.PageEvent = new PageNumberEventHandler();
// Close the document
document.Close();
}
}
public class PageNumberEventHandler : PdfPageEventHelper
{
public override void OnEndPage(PdfWriter writer, Document document)
{
base.OnEndPage(writer, document);
// Create a table for the page number
PdfPTable table = new PdfPTable(1);
table.TotalWidth = 300f;
table.HorizontalAlignment = Element.ALIGN_CENTER;
// Add page number to the table cell
PdfPCell cell = new PdfPCell(new Phrase($"Page {writer.PageNumber}"));
cell.Border = 0;
table.AddCell(cell);
// Write the table at the bottom of the page
table.WriteSelectedRows(0, -1, 150, document.Bottom, writer.DirectContent);
}
}
}
Imports System.IO
Imports iTextSharp.text
Imports iTextSharp.text.pdf
Namespace ConsoleApp1
Friend Class Program
Shared Sub Main(ByVal args() As String)
' Create a new PDF document
Dim document As New Document()
Dim writer As PdfWriter = PdfWriter.GetInstance(document, New FileStream("output.pdf", FileMode.Create))
' Open the document to add content
document.Open()
document.Add(New Paragraph("Hello, world!"))
' Attach page number event to PDF writer
writer.PageEvent = New PageNumberEventHandler()
' Close the document
document.Close()
End Sub
End Class
Public Class PageNumberEventHandler
Inherits PdfPageEventHelper
Public Overrides Sub OnEndPage(ByVal writer As PdfWriter, ByVal document As Document)
MyBase.OnEndPage(writer, document)
' Create a table for the page number
Dim table As New PdfPTable(1)
table.TotalWidth = 300F
table.HorizontalAlignment = Element.ALIGN_CENTER
' Add page number to the table cell
Dim cell As New PdfPCell(New Phrase($"Page {writer.PageNumber}"))
cell.Border = 0
table.AddCell(cell)
' Write the table at the bottom of the page
table.WriteSelectedRows(0, -1, 150, document.Bottom, writer.DirectContent)
End Sub
End Class
End Namespace
Açıklama
- PDF Belgesi Oluşturma: Boş bir PDF dosyası üretmek için yeni bir
DocumentvePdfWriterbaşlatın. - Bağlamsal İçerik Ekleme: Belgeye paragraflar gibi temel içerik ekleyin.
- Sayfa Numaralandırma: iTextSharp'ın olay işleme özelliğini sayfa numaraları eklemek için kullanırız.
PdfPageEventHelper'dan türetilen bir sınıf oluşturuyoruz. OnEndPage'ı Aşırı Yükleme: Özelleştirilmiş sınıfta, her sayfanın altına sayfa numaraları eklemek içinOnEndPagemetodunu aşırı yükleyin.- Belgeyi Kapatma: Belgeyi kapatarak belgeleri finalize edin.

Sonuç
Sonuç olarak, IronPDF'in uzmanlığı, kullanılabilirliği ve .NET ortamları ile sorunsuz entegrasyonu, HTML'den PDF'ye dönüştürme ve ilgili işlevsellikler gerektiren senaryolar için en iyi seçenek olarak konumlandırıyor. iTextSharp, C# PDF işleme kütüphaneleri manzara içinde güçlü bir rakip olmaya devam etse de. IronPDF ile HTML içerikten, modern geliştirme ortamında başarılı olmak için gereken kolaylık, etkililik ve uyarlanabilirlikle fatura, raporlar ve dinamik olarak oluşturulan belgeleri oluşturabilirsiniz.
IronPDF'in Lite sürümü, kalıcı lisans, yükseltme seçenekleri ve bir yıl süresince yazılım bakımı içerir. Filigranlı deneme süresi, kullanıcılara ürünü pratik ayarlarda değerlendirme imkanı tanır. Daha fazlasını öğrenmek için lisans sayfasını ziyaret edin. Iron Software hakkında daha fazla ayrıntı için web sitesini ziyaret edin.
Sıkça Sorulan Sorular
iTextSharp kullanarak C#'da bir PDF'ye sayfa numaralari nasıl ekleyebilirim?
C#'da iTextSharp kullanarak sayfa numaralari eklemek için PdfPageEventHelper sınıfindan turetilen özel bir sınıf oluşturabilirsiniz. Sayfa numaralari eklemek için OnEndPage metodunu override edin ve bu olayi PdfWriter örnek olayina ekleyin.
PDF'ler çeşitli sektorlerde neden önemlidir?
PDF'ler, metin ve görsellerin tutarli biçimlendirilmesini saglayarak, belge oluşturma ve faturalama için kurumsal sektorler arasinda esastir. Belgeleri profesyonel bir şekilde sunmak için guvenilirdirler.
IronPDF kullanarak PDF manipülasyonu yapmanın avantajları nelerdir?
IronPDF, .NET ortamlarında PDF'ler oluşturmak, görüntülemek ve düzenlemek için güçlü özellikler sunar. HTML, JavaScript ve görselleri PDF'e dönüştürmede ustun performans gösterir ve özel ust ve alt bilgileri, filigranlari destekler.
IronPDF, JavaScript desteği ile HTML'den PDF dönüşümunu yapabilir mi?
Evet, IronPDF, web tarayicisinda gorundugu şekilde HTML iceriginin (JavaScript dahil) PDF'e dönüştürulmesini saglar, layout ve fonksiyonlar korunur.
IronPDF nasıl bir C# projesine yüklenebilir?
IronPDF, Visual Studio'da NuGet Paket Yönetici kullanilarak yüklenebilir. 'IronPDF' aratarak projeye ekleyin ve özelliklerini kullanmaya başlayin.
IronPDF'un sundugu deneme suresi neden önemlidir?
IronPDF'un deneme suresi, geliştiricilere, gerçek uygulamalarda fonksiyonlarini ve özelliklerini bir lisans satın almayi dusunmeden önce, filigranli bir deneme ile kesfetme imkani tanir.
iTextSharp, sayfa numaralari ekleme konusunda IronPDF ile nasıl karsilastirilir?
iTextSharp, sayfa numaralari eklemek için olay işleme kullanirken, IronPDF, .NET geliştiricileri için kullanımi kolay hale getirerek daha basit bir yaklasim sunar: HTML şablonlarini baslik ve alt bilgilere uygular.
C# projesi için bir PDF kütüphanesi secilirken nelere dikkat edilmelidir?
Her kütüphanenin sundugu özelliklere dikkat edin. Ornegin, IronPDF, HTML'den PDF'e dönüşümde ve .NET cercevelerine iyi entegrasyon saglar, iTextSharp ise güçlü şifreleme ve metin çıkarma yetenekleri sunar.
Sayfa numaralari eklemek için iTextSharp, .NET 10 ile uyumlu mu, yoksa iText 7 mi kullanmaluyim?
iTextSharp (sürüm 5.x), resmi olarak kullanıma kapali ve bakim modundadir; sadece güvenlik düzeltmeleri alir ve yeni özellik güncellemeleri yoktur. .NET 10'da doğrudan hedeflemiyor ve modern .NET sürümlerinde kullanmak, uyumluluk kisitlamalarina yol acabilir. Yeni projeler veya .NET 10'a yukseletilecek projeler için, .NET'in en son cercevelerini desteken ve iTextSharp'a gore geliştirmeler iceren iText 7 (veya iText Core) siddetle tavsiye edilir. ([itextpdf.com](https://itextpdf.com/products/itextsharp?utm_source=openai))



