Altbilgi içeriğine atla
ÜRüN KARşıLAşTıRMALARı

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.

View Full Comparison

"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

  1. Herhangi bir IDE kullanarak yeni bir C# projesi oluşturun.
  2. Yeni bir PDF nesnesi oluşturun.
  3. HTML alt başlığına sayfa numaraları ekleyin.
  4. HTML içeriğinden bir PDF oluşturun.
  5. 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:

iTextSharp kullanarak PDF'de Sayfa Numaraları Nasıl Eklenir: Şekil 1 - Paket yöneticisinden IronPDF'in yüklenmesi

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
SHELL

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
$vbLabelText   $csharpLabel

Açıklama

  1. Render Erkekleme: HTML'den PDF'ye dönüştürme özelliği sağlayan HtmlToPdf örneğini oluşturuyoruz.
  2. HTML İçeriğini Belirleme: PDF'ye dönüştürülmesi gereken HTML içeriği belirtilir.
  3. HTML İçeriğini Render Etme: HTML'yi bir PDF belgesine dönüştürmek için RenderHtmlAsPdf fonksiyonu kullanılır.
  4. Altbilgi Tanımlama: Sayfa numaraları, HTML altbilgi metninde yer tutucular olarak temsil edilir.
  5. Altbilgiyi Ekle ve PDF'yi Kaydet: Belgeye altbilgi uygulayın ve bir PDF dosyası olarak kaydedin.

IronPDF kullanarak PDF'de Sayfa Numaraları Nasıl Eklenir: Şekil 2 - IronPDF: Sayfa numaraları ile çıktı alınmış PDF

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
$vbLabelText   $csharpLabel

Açıklama

  1. PDF Belgesi Oluşturma: Boş bir PDF dosyası üretmek için yeni bir Document ve PdfWriter başlatın.
  2. Bağlamsal İçerik Ekleme: Belgeye paragraflar gibi temel içerik ekleyin.
  3. 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.
  4. OnEndPage'ı Aşırı Yükleme: Özelleştirilmiş sınıfta, her sayfanın altına sayfa numaraları eklemek için OnEndPage metodunu aşırı yükleyin.
  5. Belgeyi Kapatma: Belgeyi kapatarak belgeleri finalize edin.

iTextSharp kullanarak PDF'de Sayfa Numaraları Nasıl Eklenir: Şekil 3 - iTextSharp: Sayfa numaraları ile çıktı alınmış PDF

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.

Lütfen dikkate aliniTextSharp, ilgili sahibine ait tescilli bir marka. Bu site, iTextSharp ile ilişkili, onaylanmış veya desteklenmiş değildir. Tüm ürün adları, logolar ve markalar ilgili sahiplerine aittir. Karşılaştırmalar yalnızca bilgilendirme amaçlıdır ve yazım sırasında kamuya açık bilgileri yansıtır.

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

Curtis Chau
Teknik Yazar

Curtis Chau, Bilgisayar Bilimleri alanında lisans derecesine sahiptir (Carleton Üniversitesi) ve Node.js, TypeScript, JavaScript ve React konularında uzmanlaşmış ön uç geliştirme üzerine uzmanlaşmıştır. Kullanıcı dostu ve estetik açıdan hoş arayüzler tasarlamaya tutkuyla bağlı olan Curtis, modern çerç...

Daha Fazlasını Oku

Iron Destek Ekibi

Haftanın 5 günü, 24 saat çevrimiçiyiz.
Sohbet
E-posta
Beni Ara