IRONSOFTWAREHOME

C# .NET'te HTML'den PDF'e

Jacob Mellor, Teknoloji Direktörü @ Team Iron
Jacob Mellor
Updated: 17 Eylül 2026

IronPDF'nin geliştiricileri olarak, HTML'den PDF'e dönüşümün müşteri beklentilerini karşılayan doğru, yüksek kaliteli sonuçlar üretmesinin ne kadar önemli olduğunu biliyoruz. Bu C# eğitimi, uygulamalarınız, projeleriniz ve web siteleriniz için bir HTML'den PDF'e dönüştürücü oluşturma konusunda size rehberlik edecek. Bir C# HTML'den PDF'e dönüştürücü geliştireceğiz ve IronPDF'den çıkan PDF belgeleri, Google Chrome web tarayıcısı tarafından üretilen PDF'lerle piksel mükemmel olacak.

  1. 1Install IronPDF with NuGet Package Manager

    PM > Install-Package IronPdf

  2. 2Bu kod parçacığını kopyalayın ve çalıştırın.

    IronPdf.ChromePdfRenderer
           .StaticRenderHtmlAsPdf("<p>Hello World</p>")
           .SaveAs("pixelperfect.pdf");
  3. 3Canlı ortamınızda test için dağıtım yapın

    Ücretsiz deneme ile bugün projenizde IronPDF kullanmaya başlayın
    arrow pointer

Genel Bakış


C# & VB.NET için HTML'den PDF'e Dönüştürücü

.NET'te programatik olarak PDF dosyaları oluşturmak sinir bozucu bir görev olabilir. PDF belge dosya formatı daha çok yazıcılar için tasarlanmıştır, geliştiriciler için değil. Ve C#'ta PDF oluşturma için uygun kütüphaneler veya yerleşik özellikler pek yoktur, birçok kütüphane ekstra kurulum gerektirir ve basit bir görevi gerçekleştirmek için birden fazla kod satırı gerektirdiğinde daha fazla hayal kırıklığına neden olur.

Bu eğitimde kullanacağımız C# HTML'den PDF'e dönüştürme aracı, Iron Software tarafından geliştirilen IronPDF'dir, oldukça popüler bir C# PDF oluşturma ve düzenleme kütüphanesidir. Bu kütüphane, tam PDF düzenleme ve oluşturma işlevselliğine sahiptir, kutudan çıktığı gibi çalışır, ihtiyacınız olanı en az satırda yapar ve 50'den fazla özelliğinin mükemmel belgelerine sahiptir. IronPDF, .NET 10, .NET 9, .NET 8, .NET 7, .NET 6 ve .NET 5, .NET Core, .NET Standard ve .NET Framework'ü Windows, macOS, Linux, Docker, Azure ve AWS üzerinde desteklemesiyle öne çıkar.

C# ve IronPDF ile "bir PDF belgesi oluşturmak" veya "HTML'den PDF'e dönüştürme" mantığı basittir. IronPDF'nin gelişmiş Chrome Renderer'ı sayesinde, PDF belgesi tasarımı ve düzeninin çoğu veya tamamı mevcut HTML varlıklarını kullanacaktır.

.NET'te HTML5 ile dinamik PDF oluşturma yöntemi, konsol uygulamaları, Windows Forms uygulamaları, WPF, web siteleri ve MVC'de eşit derecede iyi çalışır.

IronPDF ayrıca HTML'nizi Chrome ile hata ayıklama desteği sunar ve Piksel Mükemmel PDF'ler oluşturur. Bunu ayarlamak için bir eğitim burada bulunabilir.

IronPDF, .NET ekosisteminin içinde ve dışında birkaç dilde mevcuttur.

IronPDF, geliştirme için ücretsizdir; canlı dağıtım ve deneme filigranını kaldırmak için bir lisans anahtarı gereklidir. Buradan bir lisans satın alabilirsiniz veya buradan ücretsiz 30 günlük deneme anahtarı için kaydolabilirsiniz.


Adım 1

HTML'den PDF'e C# Kütüphanesini İndirin ve Yükleyin

Visual Studio - NuGet Paket Yöneticisi

Visual Studio'da, proje çözüm gezgininize sağ tıklayın ve "NuGet Paketlerini Yönet..." seçeneğini seçin. Buradan sadece IronPDF'yi arayın ve çözümünüze en son sürümü yükleyin... çıkan herhangi bir iletişim kutusuna Tamam deyin. Bu, VB.NET projelerinde de aynı şekilde çalışacaktır.

PM > Install-Package IronPdf

NuGet Web Sitesinde IronPDF

IronPDF'nin özellikleri, uyumluluğu ve indirmeleri hakkında tam bir bilgi almak için lütfen IronPDF'yi NuGet'in resmi web sitesinde kontrol edin: https://www.nuget.org/packages/IronPdf

DLL ile Yükleme

Başka bir seçenek de IronPDF DLL'ini doğrudan yüklemektir. IronPDF, https://ironpdf.com/packages/IronPdf.zip adresinden indirilebilir ve projeye veya GAC'a manuel olarak yüklenebilir.


Nasıl Yapılır Eğitimleri

C# .NET'te Bir HTML Dizesi ile PDF Oluşturun

Nasıl Yapılır: HTML Dizesini PDF'e Dönüştürmek? C#'ta yeni bir PDF dosyası oluşturmak çok verimli ve ödüllendirici bir beceridir.

Herhangi bir HTML (HTML5) dizesini PDF'e dönüştürmek için basitçe ChromePdfRenderer.RenderHtmlAsPdf yöntemini kullanabiliriz. C# HTML'den PDF'e render işlemi, IronPDF NuGet paketi ile birlikte gelen Google Chromium motorunun tam işlevsel bir sürümü tarafından gerçekleştirilir.

using IronPdf;

// ChromePdfRenderer turns HTML into a PDF using IronPDF's embedded Chrome engine
var renderer = new ChromePdfRenderer();

// Render an HTML string. The result is a PdfDocument held in memory
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello IronPdf</h1>");

// Write the PDF to disk
pdf.SaveAs("pixel-perfect.pdf");

RenderHtmlAsPdf, HTML5, CSS3, JavaScript ve görüntüleri tam olarak destekler. Bu varlıklar bir sabit diskteyse, RenderHtmlAsPdf'in ikinci parametresini varlıkları içeren dizine ayarlamak isteyebiliriz. Bu yöntem, PDF bilgilerini tutmak için kullanılan bir sınıf olan PdfDocument nesnesini döndürür.

IronPDF, HTML'nizi Chrome'da göründüğü gibi tam olarak render edecektir

HTML, CSS ve JavaScript'inizi düzenlerken orada gördüğünüz değişikliklerin IronPDF'den çıktığınızda piksel mükemmel aynı olduğundan emin olmak için Chrome'u tam HTML hata ayıklama için ayarlamanıza izin veren tam bir eğitimimiz var. Lütfen eğitimi burada bulun: Chrome'da HTML'yi Hata Ayıklayarak Piksel Mükemmel PDF'ler Oluşturma.

Temel URL yolu (BaseUrlOrPath argümanı):

using IronPdf;

var renderer = new ChromePdfRenderer();

// The second argument is the base path. Relative URLs in the HTML (the image
// below, but also stylesheets, scripts and fonts) are resolved against it.
var pdf = renderer.RenderHtmlAsPdf("<img src='image1.png'/>", @"C:\MyProject\Assets\");

pdf.SaveAs(@"C:\MyProject\Assets\output.pdf");

Tüm referans verilen CSS stil sayfaları, görüntüler ve JavaScript dosyaları bu temel yola göre göreceli olacak ve düzenli ve mantıklı bir yapıda tutulabilir. Ayrıca, elbette, Google Fonts gibi web yazı tipleri ve hatta jQuery dahil olmak üzere çevrimiçi görüntüler, stil sayfaları ve varlıklar referans vermeyi tercih edebilirsiniz.


Mevcut URL Kullanarak PDF Dışa Aktarma | URL'den PDF'e

Mevcut URL'leri PDF olarak render etmek C# ile çok verimli ve sezgiseldir. Bu aynı zamanda ekiplerin PDF tasarımını ve arka uç PDF render işini birden fazla ekip arasında bölmesine olanak tanır.

Aşağıdaki örnekte Wikipedia.com'dan bir sayfa render edelim:

using IronPdf;

var renderer = new ChromePdfRenderer();

// Render a live web page straight from its URL
var pdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/PDF");

// The PDF is written next to the executable
pdf.SaveAs("wikipedia.pdf");

Bağlantıların ve hatta HTML formlarının C# kodumuz tarafından üretilen PDF içinde korunduğunu fark edeceksiniz.

Mevcut web sayfalarını render ederken uygulamak isteyebileceğimiz bazı püf noktaları vardır:

Baskı ve Ekran CSS

CSS medya türleri, bir sayfanın baskı ve ekran için ayrı stiller taşımasına izin verir. IronPDF'ye genellikle daha basit olan "Baskı" CSS'sini render etmesini söyleyebiliriz. Varsayılan olarak "Ekran" CSS stilleri render edilecektir, bu da tarayıcıda gördüğünüzle eşleşir.

using IronPdf;
using IronPdf.Rendering;

var renderer = new ChromePdfRenderer();

// Choose which CSS media type the page is rendered with.
// Screen (the default) renders the page as a browser displays it;
// Print applies the page's @media print rules instead.

// renderer.RenderingOptions.CssMediaType = PdfCssMediaType.Screen;
renderer.RenderingOptions.CssMediaType = PdfCssMediaType.Print;

Ana Makale: Piksel Mükemmel HTML'den PDF'e Karşılaştırma.

JavaScript

IronPDF, JavaScript, jQuery ve hatta AJAX'ı destekler. Web sayfamızın bir anlık görüntüsünü render etmeden önce IronPDF'ye JS veya ajax'ın bitmesini beklemesini söylememiz gerekebilir.

using IronPdf;

var renderer = new ChromePdfRenderer();

// Let the page's JavaScript run before the snapshot is taken
renderer.RenderingOptions.EnableJavaScript = true;

// Give scripts and AJAX calls 500 milliseconds to finish before rendering.
// For event-driven pages, WaitFor.NetworkIdle() or WaitFor.JavaScript() wait
// for a signal instead of a fixed delay.
renderer.RenderingOptions.WaitFor.RenderDelay(500);

JavaScript desteğini, sayfa yüklendiğinde JavaScript tarafından çizilen d3.js chord-diagram dokümantasyon sayfasını render ederek gösterebiliriz:

using IronPdf;

var renderer = new ChromePdfRenderer();

// The chart is drawn by JavaScript, so let it run and give it a moment to finish
renderer.RenderingOptions.EnableJavaScript = true;
renderer.RenderingOptions.WaitFor.RenderDelay(500);

// Render the d3.js chord-diagram documentation page, whose charts are drawn by JavaScript
var pdf = renderer.RenderUrlAsPdf("https://d3js.org/d3-chord");

pdf.SaveAs("chart.pdf");

Duyarlı CSS

.NET'te duyarlı CSS kullanarak HTML'den PDF'e! Duyarlı web sayfaları tarayıcıda görüntülenmek üzere tasarlanmıştır. IronPDF, sunucunuzun işletim sistemi içinde gerçek bir tarayıcı penceresi açmaz. Bir tarayıcı görünüm alanı olmadan, duyarlı düzenler en dar kırılma noktasına geri dönebilir.

Bu sorunu aşmak için Baskı css medya türlerini kullanmanızı öneririz. Baskı CSS'si normalde duyarlı olmamalıdır.

using IronPdf;
using IronPdf.Rendering;

var renderer = new ChromePdfRenderer();

// Responsive layouts are designed for a browser viewport, so render the page's
// print stylesheet instead of its screen stylesheet
renderer.RenderingOptions.CssMediaType = PdfCssMediaType.Print;

Bir HTML Sayfasından PDF Oluşturma

Sabit diskimizdeki herhangi bir HTML sayfasını PDF olarak da render edebiliriz. CSS, görüntüler ve js gibi tüm göreceli varlıklar, dosya file:// protokolü kullanılarak açılmış gibi render edilecektir.

using IronPdf;

var renderer = new ChromePdfRenderer();

// Render an HTML file from disk. Relative CSS, image and script paths
// resolve against the file's own folder, as if opened with file://
var pdf = renderer.RenderHtmlFileAsPdf("Assets/TestInvoice1.html");

pdf.SaveAs("Invoice.pdf");

Bu yöntem, geliştiriciye geliştirme sırasında HTML içeriğini bir tarayıcıda test etme fırsatı sunma avantajına sahiptir. IronPDF'nin render motorunun dayandığı web tarayıcısı olduğu için Chrome'u öneriyoruz.

XML'i PDF'e dönüştürmek için XML içeriğinizi PDF'e yazdırmak için XSLT şablonlamayı kullanabilirsiniz.


Özel Başlıklar ve Altbilgiler Ekleyin

Başlıklar ve altbilgiler, IronPDF kullanılarak render edilirken veya mevcut PDF dosyalarına eklenebilir.

IronPDF ile, başlıklar ve altbilgiler TextHeaderFooter sınıfını kullanarak basit metin tabanlı içerik içerebilir - veya HtmlHeaderFooter sınıfını kullanarak görüntüler ve zengin HTML içeriği ile.

using IronPdf;
using IronPdf.Rendering;

// Create a PDF from an existing HTML file with rendering options set up front
var renderer = new ChromePdfRenderer
{
    RenderingOptions = new ChromePdfRenderOptions
    {
        // Margins are in millimeters
        MarginTop = 50,
        MarginBottom = 50,

        // Render the page's print stylesheet
        CssMediaType = PdfCssMediaType.Print,

        // Plain-text header: the document title, centered, above a divider line
        TextHeader = new TextHeaderFooter
        {
            CenterText = "{pdf-title}",
            DrawDividerLine = true,
            FontSize = 16
        },

        // Plain-text footer: date and time on the left, page numbers on the right
        TextFooter = new TextHeaderFooter
        {
            LeftText = "{date} {time}",
            RightText = "Page {page} of {total-pages}",
            DrawDividerLine = true,
            FontSize = 14
        }
    }
};

var pdf = renderer.RenderHtmlFileAsPdf("Assets/TestInvoice1.html");

pdf.SaveAs("Invoice.pdf");

// Open the result in the default PDF viewer
System.Diagnostics.Process.Start(new System.Diagnostics.ProcessStartInfo
{
    FileName = "Invoice.pdf",
    UseShellExecute = true
});

Aşağıdaki nasıl yapılır makalesinde tüm render seçeneklerini keşfedin: Render Seçeneklerini Nasıl Kullanılır.

HTML Başlıklar ve Altbilgiler

HtmlHeaderFooter sınıfı, HTML5 içeriği kullanarak zengin başlıklar ve altbilgiler oluşturulmasına olanak tanır ve bu içerik görüntüler ve stil sayfaları bile içerebilir.

using IronPdf;

var renderer = new ChromePdfRenderer();

// An HTML footer can carry markup, styles and images.
// {page} and {total-pages} are filled in for every page.
renderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter
{
    HtmlFragment = "<div style='text-align:right'><em style='color:pink'>page {page} of {total-pages}</em></div>"
};

PDF Başlıklarında ve Altbilgilerinde Dinamik Veri

Metin ve hatta başlıkların ve altbilgilerin HTML'sine aşağıdaki gibi yer tutucular kullanarak içerik "birleştirebiliriz":

  • {page} için mevcut sayfa numarası
  • {total-pages} için PDF'deki toplam sayfa sayısı
  • {url} için render edilen PDF'nin URL'si, bir web sayfasından render edilmişse
  • {date} için bugünün tarihi
  • {time} için mevcut saat
  • {html-title} için render edilen HTML belgesinin <title> etiketi
  • {pdf-title} için belge başlığı, ChromePdfRenderOptions aracılığıyla ayarlanabilir

C# HTML'den PDF'e Dönüştürme Ayarları

Kullanıcılarımızın ve müşterilerimizin PDF içeriğinin nasıl render edilmesini bekleyebileceği konusunda birçok nüans vardır.
ChromePdfRenderer sınıfı, bu seçenekleri ayarlamak için kullanılabilecek bir RenderingOptions özelliği içerir.

Örneğin, yalnızca "print" stil CSS3 direktiflerini kabul etmeyi seçmek isteyebiliriz:

using IronPdf;
using IronPdf.Rendering;

var renderer = new ChromePdfRenderer();

// Render the page's @media print CSS rather than its screen styles
renderer.RenderingOptions.CssMediaType = PdfCssMediaType.Print;

renderer.RenderHtmlAsPdf("<html><body><h1>Hello, World!</h1></body></html>").SaveAs("Output.pdf");

Baskı marjlarımızın boyutunu değiştirerek sayfada daha fazla boşluk oluşturmak, büyük başlıklar veya altbilgiler için yer açmak veya broşürlerin veya posterlerin ticari baskısı için sıfır marjlar ayarlamak isteyebiliriz:

using IronPdf;

var renderer = new ChromePdfRenderer();

// Page margins in millimeters. Larger margins leave room for headers and
// footers; set them to 0 for edge-to-edge brochures and posters.
renderer.RenderingOptions.MarginTop = 50;
renderer.RenderingOptions.MarginBottom = 50;
renderer.RenderingOptions.MarginLeft = 20;
renderer.RenderingOptions.MarginRight = 20;

HTML öğelerinden arka plan görüntülerini açıp kapatmak da mümkündür:

using IronPdf;

var renderer = new ChromePdfRenderer();

// Include CSS background colors and images in the PDF (set false to drop them)
renderer.RenderingOptions.PrintHtmlBackgrounds = true;

var pdf = renderer.RenderHtmlAsPdf("<h1 style='background:#eee'>Hello, PDF!</h1>");

pdf.SaveAs("output.pdf");

Çıktı PDF'lerimizin herhangi bir sanal kağıt boyutunda render edilmesi de mümkündür - portre ve manzara boyutları ve hatta milimetre veya inç cinsinden ayarlanabilen özel boyutlar dahil.

using IronPdf;
using IronPdf.Rendering;

var renderer = new ChromePdfRenderer();

// Standard paper sizes and orientation
renderer.RenderingOptions.PaperSize = PdfPaperSize.A4;
renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Landscape;

// Or a custom size, in millimeters or inches
// renderer.RenderingOptions.SetCustomPaperSizeinMilimeters(210, 297);
// renderer.RenderingOptions.SetCustomPaperSizeInInches(8.5, 11);

Aşağıdaki nasıl yapılır makalesinde tüm render seçeneklerini keşfedin: "Render Seçeneklerini Nasıl Kullanılır."


Bu türden favori kütüphanem IronPDF'dir. PDF dosyalarının hızlı ve verimli bir şekilde işlenmesine olanak tanır. Ayrıca, PDF/A formatına dışa aktarma ve dijital imzalama gibi birçok değerli özelliğe sahiptir.

Milan Jovanovic

Microsoft MVP

Vaka çalışmasını görüntüle

IronOCR, manuel işleme maliyetinden yıllık 40.000 USD tasarruf etmemizi sağlıyor, üretkenliği artırıyor ve yüksek etkili görevler için kaynakları serbest bırakıyor. Kesinlikle tavsiye ederim.

Brent Matzelle

Teknoloji Müdürü, OPYN

Vaka çalışmasını görüntüle

IronSuite, operasyonlarımızda kritik bir rol oynar. Bunlar, iş süreçlerinde verimliliği artıran, kat planları oluşturmak ve envanter yönetimini geliştirmek gibi araçlardır.

David Jones

Baş Yazılım Mühendisi, Agorus Build

Vaka çalışmasını görüntüle

HTML Şablonlamayı Uygulama

İnternet ve web sitesi geliştiricileri için PDF'leri şablonlamak veya "toplu oluşturmak" yaygın bir gerekliliktir.

Bir PDF belgesinin kendisini şablonlamak yerine, IronPDF ile mevcut, iyi denenmiş teknolojileri kullanarak HTML'mizi şablonlayabiliriz. HTML şablonu bir sorgu dizesi veya veritabanından gelen verilerle birleştirildiğinde, dinamik olarak oluşturulmuş bir PDF belgesi elde ederiz.

En basit durumda, C# String.Format yöntemini kullanmak temel örnek için etkilidir.

using IronPdf;

var renderer = new ChromePdfRenderer();

// Insert a value into an HTML template with string.Format
string html = string.Format("<h1>Hello {0}!</h1>", "World");

var pdf = renderer.RenderHtmlAsPdf(html);

pdf.SaveAs("Hello.pdf");

HTML dosyası daha uzunsa, genellikle [[NAME]] gibi keyfi yer tutucular kullanabiliriz ve bunları daha sonra gerçek verilerle değiştirebiliriz.

Aşağıdaki örnek, her biri bir kullanıcıya özel 3 PDF oluşturacaktır.

using IronPdf;

var renderer = new ChromePdfRenderer();

// A template with a placeholder to replace
var htmlTemplate = "<p>[[NAME]]</p>";

var names = new[] { "John", "James", "Jenny" };

// One personalized PDF per name
foreach (var name in names)
{
    var htmlInstance = htmlTemplate.Replace("[[NAME]]", name);

    var pdf = renderer.RenderHtmlAsPdf(htmlInstance);

    pdf.SaveAs(name + ".pdf");
}

Handlebars.NET ile Gelişmiş Şablonlama

C# verilerini PDF oluşturma için HTML ile birleştirmenin sofistike bir yöntemi, Handlebars şablonlama dilini kullanmaktır.

Handlebars, C# nesnelerinden ve sınıf örneklerinden, veritabanı kayıtları dahil olmak üzere dinamik HTML oluşturmayı mümkün kılar. Handlebars, bir sorgunun bir fatura oluşturulması gibi bilinmeyen sayıda satır döndürebileceği durumlarda özellikle etkilidir.

Öncelikle projemize Handlebars.Net NuGet paketi eklemeliyiz.

using HandlebarsDotNet;

// A Handlebars template with two placeholders
var source =
    @"<div class=""entry"">
        <h1>{{title}}</h1>
        <div class=""body"">
            {{body}}
        </div>
    </div>";

// Compile it once, then fill it with any object that has matching properties
var template = Handlebars.Compile(source);

var data = new { title = "My new post", body = "This is my first post!" };

string html = template(data);

// html now contains:
//
// <div class="entry">
//   <h1>My new post</h1>
//   <div class="body">
//     This is my first post!
//   </div>
// </div>

Bu HTML'yi render etmek için basitçe RenderHtmlAsPdf yöntemini kullanabiliriz.

using HandlebarsDotNet;
using IronPdf;

// Fill the Handlebars template, then render the resulting HTML
var template = Handlebars.Compile("<h1>{{title}}</h1><p>{{body}}</p>");
string html = template(new { title = "My new post", body = "This is my first post!" });

var renderer = new ChromePdfRenderer();

var pdf = renderer.RenderHtmlAsPdf(html);

pdf.SaveAs("Handlebars.pdf");

Handlebars şablonlama dili ve C# uygulaması hakkında daha fazla bilgi edinebilirsiniz GitHub.

HTML5 Kullanarak Sayfa Sonları Ekleme

Bir PDF belgesinde yaygın bir gereklilik, sayfalandırmadır. Geliştiriciler, temiz ve okunabilir bir düzen için PDF sayfalarının nerede başlayıp bittiğini kontrol etmelidir.

Bunu yapmanın en kolay yolu, herhangi bir basılı HTML belgesine bir sayfa sonu render edecek daha az bilinen bir CSS hilesi ile yapmaktır.

<div style='page-break-after: always;'>&nbsp;</div>
HTML

Verilen HTML çalışır, ancak en iyi uygulama değildir. Medya özniteliğini aşağıdaki örnekteki gibi ayarlamanızı öneririz. Çok sayfalı HTML içeriğini düzenlemenin bu kadar düzenli ve temiz bir yolu. IronPDF varsayılan olarak screen medya türü ile render ettiğinden, media="print" stil sayfası yalnızca RenderingOptions.CssMediaType PdfCssMediaType.Print olarak ayarlandığında uygulanır (yukarıdaki Dönüştürme Ayarları bölümüne bakın).

<!DOCTYPE html>
<html>
  <head>
    <style type="text/css" media="print">
      .page {
        page-break-after: always;
        page-break-inside: avoid;
      }
    </style>
  </head>
  <body>
    <div class="page">
      <h1>This is Page 1</h1>
    </div>
    <div class="page">
      <h1>This is Page 2</h1>
    </div>
    <div class="page">
      <h1>This is Page 3</h1>
    </div>
  </body>
</html>
HTML

Nasıl Yapılır, Sayfa Sonları ile İpuçları ve Püf Noktaları hakkında daha fazla bilgi verir.


Bir PDF'ye Kapak Sayfası Ekleme

IronPDF, PDF belgelerini birleştirmeyi kolaylaştırır. Bu tekniğin en yaygın kullanımı, mevcut bir render edilmiş PDF belgesine bir kapak sayfası veya arka sayfa eklemektir.

Bunu yapmak için önce bir kapak sayfası render ederiz ve ardından PdfDocument.Merge() statik yöntemini kullanarak iki belgeyi birleştiririz.

using IronPdf;

var renderer = new ChromePdfRenderer();

// The document body, rendered from a web page
var pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf/");

// Prepend an existing PDF as the cover page. Merge returns a new document.
var cover = PdfDocument.FromFile("CoverPage.pdf");
var pdfMerged = PdfDocument.Merge(cover, pdf);

pdfMerged.SaveAs("Combined.pdf");

Tam bir kod örneği burada bulunabilir: PDF Kapak Sayfası Kod Örneği.


Filigran Ekleme

IronPDF'nin desteklediği son C# PDF özelliği, belgelere filigran eklemektir. Bu, bir belgenin her sayfasına "gizli" veya "örnek" olduğunu belirten bir not eklemek için kullanılabilir.

using IronPdf;
using IronPdf.Editing;

var renderer = new ChromePdfRenderer();

var pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf");

// Stamp every page with a red "SAMPLE" in the middle, rotated 30 degrees at 50% opacity.
// The watermark is HTML, so any markup, styling or image can be used.
pdf.ApplyWatermark(
    "<h2 style='color:red; font-size:50px'>SAMPLE</h2>",
    rotation: 30,
    opacity: 50,
    verticalAlignment: VerticalAlignment.Middle,
    horizontalAlignment: HorizontalAlignment.Center);

pdf.SaveAs(@"C:\Path\To\Watermarked.pdf");

Tam bir kod örneği burada bulunabilir: PDF Filigranlama Kod Örneği.


C# Kaynak Kodunu İndirin

Bu eğitimin tam ücretsiz HTML'den PDF'e dönüştürücü C# Kaynak Kodu, bir ziplenmiş Visual Studio 2022 proje dosyası olarak indirilebilir. C#'ta PDF belge nesneleri oluşturmak için render motorunu kullanacaktır.

Bu eğitimi bir Visual Studio projesi olarak indirin

Ücretsiz indirme, HTML'den PDF'e oluşturmak için ihtiyacınız olan her şeyi içerir - çalışan C# PDF kod örnekleri dahil:

  1. C# kullanarak bir HTML Dizesini PDF'e dönüştürme
  2. C#'ta HTML Dosyasını PDF'e (CSS, JavaScript ve görüntüleri destekleyen)
  3. C# HTML'den PDF'e bir URL kullanarak ("URL'den PDF'e")
  4. C# PDF düzenleme ve ayar örnekleri
  5. JavaScript tuval grafiklerini d3.js gibi bir PDF'e render etme
  6. PDF Kütüphanesi için C#

Sınıf Referansı

Geliştiriciler ayrıca IronPdf.PdfDocument Sınıf referansıyla ilgilenebilirler:

IronPdf.PdfDocument sınıf referansı

Bu nesne modeli, PDF belgelerinin nasıl:

  • Şifrelenmiş ve parola korumalı
  • Yeni HTML içeriği ile düzenlenmiş veya 'damgalanmış'
  • Ön plan ve arka plan görüntüleri ile geliştirilmiş
  • Sayfa veya belge düzeyinde birleştirilmiş, birleştirilmiş, kısaltılmış ve birleştirilmiş
  • Düz metin ve görüntüleri çıkarmak için ayrıştırılmış veya IronOCR paketi ile OCR işlenmiş

Blazor HTML'den PDF'e

Blazor sunucunuza HTML'den PDF'e işlevselliği eklemek kolaydır, sadece:

  1. Yeni bir Blazor sunucu projesi oluşturun veya mevcut birini kullanın
  2. Projenize IronPDF kütüphanesini NuGet kullanarak ekleyin
  3. Yeni bir Razor Bileşeni ekleyin veya mevcut birini kullanın
  4. Bir InputTextArea ekleyin ve IronPDF'ye bağlayın
  5. IronPDF'nin geri kalanını halletmesine izin verin ve dağıtın

Daha fazla okuma için, Blazor uygulamalarında HTML'den PDF'e dönüştürme için tam adım adım kılavuza devam edin.

IronPDF ile Blazor Sunucu sayfasından oluşturulan PDF

Diğer PDF Kütüphaneleri ile Karşılaştırma

IronPDF, modern .NET geliştiricileri için özel olarak tasarlanmış güçlü ve tam özellikli bir PDF kütüphanesidir. Gelişmiş bir Chromium motoru tarafından desteklenen yerel HTML'den PDF'e dönüştürme, sezgisel bir API ve düzenli güncellemeler ile geliştirmeyi basitleştirirken yüksek kaliteli sonuçlar sağlar. Diğer araçlarla nasıl karşılaştırıldığını daha yakından inceleyelim:

PDFSharp

  • Temel Özellikler: PDFsharp, yönetilen kodda PDF belgeleri oluşturmak ve düzenlemek için açık kaynaklı (MIT) bir kütüphanedir. HTML render motoru yoktur, bu nedenle web içeriğini PDF'e dönüştürmek için ayrı bir üçüncü taraf render motoru gerekir.
  • Modern Standartlar: IronPDF, Chromium tabanlı motoru aracılığıyla modern web teknolojilerini, HTML, CSS ve JavaScript dahil olmak üzere kullanır, bu da PDF'lerin çağdaş bir görünüm ve his korumasını sağlar.
  • Destek ve Güncellemeler: PDFsharp açık kaynaklıdır ve her birkaç ayda bir sürüm yayınlar, ticari destek ise ayrı olarak satılır. IronPDF, aylık sürümler ve güvenlik yamaları yayınlar ve her lisans, kurumsal uygulamalar için önemli olan profesyonel mühendislik desteği içerir.

wkhtmltopdf

  • Entegrasyon Kolaylığı: wkhtmltopdf, bir C kütüphanesi ile bir komut satırı aracıdır; resmi bir .NET paketi yoktur, bu nedenle .NET'ten kullanmak, yerel ikili dosyayı başlatmak (veya DinkToPdf gibi üçüncü taraf bir sarmalayıcı aracılığıyla çağırmak) ve dağıttığınız her platform için bu ikili dosyayı göndermek anlamına gelir.
  • Render Teknolojisi: wkhtmltopdf, QtWebKit ile render eder, Qt'nin 2015'te kullanımdan kaldırdığı ve Qt 5.6'da bıraktığı bir WebKit çatalı, bu nedenle modern JavaScript ve CSS özellikleri, özellikle dinamik, içerik açısından zengin web sitelerinde desteklenmez. IronPDF'nin Chromium motoru, güncel web standartlarını render eder.
  • Sürekli Geliştirme: wkhtmltopdf'nin son sürümü Haziran 2020'de 0.12.6 idi ve GitHub deposu Ocak 2023'te arşivlendi, bu nedenle satıcı desteği yoktur. IronPDF, aylık güncellemeler ve özel müşteri hizmetleri ile gelişmeye devam ediyor.

iTextSharp

  • HTML'den PDF'e Render: iText, HTML'yi ayrı pdfHTML eklentisi aracılığıyla dönüştürür, bir CSS düzen motoru yerine bir tarayıcıdır ve eski iTextSharp 5 hattı artık yalnızca güvenlik düzeltmeleri alır. IronPDF, HTML'yi çekirdek pakette gömülü bir Chromium motoru ile render eder, ek bir eklenti gerekmez.
  • Geliştirici Deneyimi: iText'in API'si, PDF nesneleri ve düzen öğeleri düzeyinde çalışır, bu güçlüdür ancak günlük görevler için daha fazla kod anlamına gelir. IronPDF, kodlamayı basitleştiren ve proje teslimatını hızlandıran temiz ve sezgisel bir C# API sunar.
  • Bakım ve Destek: iText'in ücretsiz kullanımı AGPL altındadır, satıcı desteği ticari lisanslarla sınırlıdır ve iTextSharp 5.x, güvenlik düzeltmeleri dışında ömrünün sonundadır. IronPDF, her lisansla profesyonel destek ve aylık güncellemeler içerir.

Aspose.PDF

  • Dönüştürme Kalitesi: Aspose.PDF, HTML'yi kendi düzen motoru ile dönüştürür, bir tarayıcı ile değil. Belgeleri, bir web sayfasını önce HttpClient ile bir akışa indirerek ve ardından HtmlLoadOptions ile Document'e geçirerek dönüştürür, doğrudan bir URL'den render etmek yerine. Aşağıdaki r/nfl testimizde, çıktı neredeyse boştu: topluluk logosu, bir başlık ve birkaç boş kutu. IronPDF'nin Chromium motoru, bir URL'yi doğrudan render eder, JavaScript dahil.
  • API Kullanılabilirliği: Aspose.PDF'nin API'si ayrıntılı olabilirken, IronPDF, kurulum süresini en aza indiren ve üretkenliği artıran geliştirici dostu bir deneyime odaklanır.
  • Çıktı Sadakati: IronPDF, Chromium ile render ettiğinden, PDF, aynı HTML için Chrome'un gösterdiği ile eşleşir, bu da yüksek hacimli PDF oluşturma için tasarımı ve hata ayıklamayı öngörülebilir hale getirir.

Syncfusion PDF

  • API Karmaşıklığı: Syncfusion PDF, öğrenilecek daha büyük bir API yüzeyine sahip yetenekli bir kütüphanedir. IronPDF ise hızlı entegrasyon için basit bir API sağlar.
  • Render Motoru: Syncfusion'un HTML dönüştürücüsü artık Chromium Blink motorunu kullanıyor; eski WebKit ve Internet Explorer motorları Essential Studio 2022 Volume 3'te kullanımdan kaldırıldı. Aşağıdaki r/nfl testimizde, Syncfusion'un çıktısı ana akışı korudu ancak gezinme ve topluluk panellerini düşürdü, IronPDF'nin Chromium motoru ise tüm sayfayı render etti.
  • Dönüştürmenin Ötesinde: IronPDF paketi ayrıca dijital imzalar, açıklamalar, form doldurma ve barkod damgalama gibi işlemleri de kapsar, böylece aynı kütüphane belge iş akışının geri kalanını da yönetir.

Render Karşılaştırması

Bu kütüphanelerin HTML'den PDF'e dönüştürme kalitesini karşılaştırmak için, dinamik içerik, canlı güncellemeler, modern CSS ve JavaScript tabanlı öğeler içeren bir Reddit topluluk sayfası, r/nfl kullandık:

https://www.reddit.com/r/nfl/

Chrome'da gösterilen r/nfl Reddit sayfasının ekran görüntüsü

Her kütüphanenin varsayılan ayarlarıyla tek bir çalıştırmadan elde edilen sonuçlar burada. Syncfusion ve Aspose.PDF değerlendirme yapıları olarak çalıştırıldı, bu yüzden çıktıları değerlendirme filigranları taşıyor (her görüntüyü büyütülmüş olarak görüntülemek için tıklayın):

IronPDF

IronPDF'nin r/nfl Reddit sayfasını HTML'den PDF'e dönüştürme çıktısıDinamik içeriği ve modern stilizasyonu koruyan, iyi biçimlendirilmiş ve görsel olarak doğru PDF.

SyncFusion

Syncfusion'un r/nfl Reddit sayfasını HTML'den PDF'e dönüştürme çıktısıDeneme yapısı ile dönüştürüldü. Ana akış, gönderi içeriği ve stilizasyon dar bir tek sütun düzeninde geldi, ancak sol gezinme ve sağdaki topluluk paneli düşürüldü.

Aspose.PDF

Aspose.PDF'nin r/nfl Reddit sayfasını HTML'den PDF'e dönüştürme çıktısıDeğerlendirme yapısı; HTML'yi önce indirmeniz gerekiyordu (Aspose.PDF, HTML'yi bir akıştan yükler, bir URL'den değil). Çıktı neredeyse boştu: topluluk logosu, bir başlık ve birkaç boş kutu.

Wkhtmltopdf

wkhtmltopdf'nin r/nfl Reddit sayfasını HTML'den PDF'e dönüştürme çıktısıwkhtmltopdf dönüşümü tamamladı, ancak sonuç sayfanın metni ve görüntüleri, düzeni, stilizasyonu, dinamik öğeleri veya etkileşimi olmadan. Bu, wkhtmltopdf'yi modern, dinamik web sayfaları için uygun hale getirmez.
Lütfen dikkate alın: PDFsharp'ın HTML render motoru yoktur ve iText, HTML'yi yalnızca ayrı pdfHTML eklentisi aracılığıyla dönüştürür, bu nedenle her ikisi de bu tarayıcı-render testi dahil edilmedi.

Sonuç

Modern ve güvenilir bir PDF çözümü arayan .NET geliştiricileri için IronPDF güçlü bir seçimdir. Chromium tabanlı HTML'den PDF'e dönüştürme, kullanım kolaylığı, düzenli güncellemeler ve geniş özellik seti ile IronPDF, üretkenliği artırırken eski veya desteklenmeyen kütüphanelerle ilişkili risklerden kaçınır. Ticari uygulamalar için tasarlanan IronPDF, projelerinizi bakımı yapılan ve desteklenen bir kütüphanede tutar.

Gerçek dünya dinamik bir web sayfası ile yaptığımız testte, IronPDF en eksiksiz ve doğru render'ı üretti. Syncfusion, gezinme ve topluluk panellerini düşürdü. Aspose.PDF, HTML'yi önce indirmenizi gerektirdi ve yine de sayfanın neredeyse hiçbirini render etmedi. wkhtmltopdf, sayfanın stilizasyonu olmadan metin ve görüntüleri üretti, modern siteler için kötü bir uyum.

Modern HTML'den PDF'e iş akışları için, bu render doğruluğu ve küçük, okunabilir bir API kombinasyonu, IronPDF'yi öne çıkaran şeydir.

Dinamik, ağır CSS HTML'yi kolayca PDF'e dönüştüren IronPDF'nin tam özellikli paketini deneyimleyin. Şimdi ücretsiz deneme ile deneyin.


C# Eğitim Videosunda HTML'den PDF'e İzleyin

PDF belgesi ile, Chrome'un PDF'leri indirmek yerine tarayıcıda açmasını ayarlamayı öğrenmek için aşağıdaki bağlantıyı ziyaret edebilirsiniz.

İlk Adım:
arrow pointer

Sıkça Sorulan Sorular

IronPDF kullanarak C#'ta HTML'yi PDF'ye nasıl dönüştürebilirim?

IronPDF kullanarak HTML'yi PDF'ye dönüştürmek için ChromePdfRenderer'ı başlatmanız, RenderHtmlAsPdf yöntemiyle HTML içeriğini PDF olarak oluşturmanız ve ardından PDF'yi bir dosyaya kaydetmeniz gerekir.

IronPDF için sistem gereksinimleri nelerdir?

IronPDF, Windows, macOS, Linux, Docker, Azure ve AWS üzerinde .NET 10, .NET 9, .NET 8, .NET 7, .NET 6, .NET 5, .NET Core, .NET Standard ve .NET Framework'ü destekler.

IronPDF'yi diğer programlama dilleriyle kullanabilir miyim?

Evet, IronPDF, .NET ekosisteminin içinde ve dışında F#, VB.NET, Python, Java ve Node.js dahil olmak üzere birden fazla dille kullanılabilir.

IronPDF kullanarak bir PDF'ye özel başlıklar ve altbilgiler nasıl ekleyebilirim?

IronPDF ile, metin tabanlı içerik için TextHeaderFooter sınıfını veya zengin HTML içeriği için HtmlHeaderFooter sınıfını kullanarak başlıklar ve altbilgiler ekleyebilirsiniz.

IronPDF ile mevcut bir URL'den PDF oluşturmak mümkün mü?

Evet, IronPDF'de RenderUrlAsPdf yöntemini kullanarak mevcut bir URL'den PDF oluşturabilirsiniz.

IronPDF gelişmiş CSS ve JavaScript oluşturmayı destekliyor mu?

Evet, IronPDF, modern web tasarımlarının doğru bir şekilde oluşturulmasını sağlayan gelişmiş CSS3 ve JavaScript, jQuery ve AJAX'ı destekler.

IronPDF'de toplu PDF oluşturma için HTML şablonlama uygulayabilir miyim?

Evet, IronPDF ile dinamik olarak PDF'ler oluşturmak için String.Format ve Handlebars.NET dahil olmak üzere C# şablonlama tekniklerini kullanabilirsiniz.

IronPDF diğer PDF kütüphaneleriyle nasıl karşılaştırılır?

IronPDF, HTML'yi gömülü bir Chromium motoruyla işler, aylık güncellemeler sunar ve kompakt bir C# API'sine sahiptir. Eğitim, PdfSharp, wkhtmltopdf, iTextSharp, Aspose.PDF ve Syncfusion PDF ile karşılaştırmalar içerir ve dinamik bir web sayfasının yan yana oluşturma testini içerir.

IronPDF ile PDF'lere filigran ekleyebilir miyim?

Evet, IronPDF, PDF belgelerinize metin veya resim filigranları eklemenize olanak tanır.

IronPDF için deneme sürümü mevcut mu?

Evet, bir lisans satın almadan önce IronPDF'nin özelliklerini test etmek için ücretsiz 30 günlük bir deneme anahtarına kaydolabilirsiniz.

Jacob Mellor, Teknoloji Direktörü @ Team Iron
Teknoloji Direktörü

Jacob Mellor, Iron Software'de Baş Teknoloji Yöneticisidir ve C# PDF teknolojisinde öncü bir mühendisdir. Iron Software'ın ana kod tabanının ilk geliştiricisi olarak, CEO Cameron Rimington ile birlikte şirketin ürün mimarisini 50'den fazla kişilik bir şirkete dönüştürmüştür ve NASA, Tesla ve dünya genelindeki devlet kurumlarına hizmet etmektedir.

...
Daha Fazla Oku

Başlamaya Hazır mısınız?

Nuget Downloads 21,062,892Sürüm:2026.9yeni yayınlandı

ÜCRETSİZİNİZİ EDİNİN

30 günlük Deneme Anahtarınızı anında edinin.

bullet_checkedKredi kartı veya hesap oluşturma gerektirmez
bullet_testÜretimde Test
filigran olmadan
bullet_calendar30 gün tamamen
işlevsel ürün
bullet_supportDeneme sırasında teknik
24/5 destek
Ücretsiz 30 Günlük Deneme Anahtarınızı anında alın.
Kredi kartı veya hesap oluşturma gerektirmez
PDF için C# NuGet Kütüphanesi
NuGet ile yükleyin

Sürüm: 2026.9

PM > Install-Package IronPdf
nuget.org/packages/IronPdf/
  1. Çözüm Gezgini'nde Referanslar'a sağ tıklayın, NuGet Paketlerini Yönet
  2. Tarayıcıya tıklayın ve "IronPdf" arayın
  3. Paketi seçin ve yükleyin
C# PDF DLL
DLL İndir

Sürüm: 2026.9

veya Windows Yükleyiciyi şuradan buradan indirin.

  1. IronPDF'i, ~/Libs gibi bir yere, Solution dizininiz içinde indirin ve açın.
  2. Visual Studio Çözüm Gezgini'nde, Referanslar'a sağ tıklayın. Tarayıcı sekmesini seçin, "IronPdf.dll"

Lisanslar $999

Key in blue circle

Ücretsiz 30 günlük Deneme Anahtarınızı anında edinin.

Your trial license will be sent to your email address

Herhangi bir sınırlama yoktur. %100 erişim. Kredi kartı gerekmez.

OR
bullet_checkedKredi kartı veya hesap oluşturma gerektirmezHerhangi bir sınırlama yoktur. %100 erişim. Kredi kartı gerekmez.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Ücretsiz Canlı Demo rezervasyonu yapın
Booking Badge

Dünya Çapında Milyonlarca Mühendisin Güvendiği

Iron Software müşteri logoları
Bağımsız Danışmanlık Alın
Aşağıdaki formu doldurun veya sales@ironsoftware.com adresine e-posta gönderin
Bilgileriniz daima gizli kalacaktır.
Dünya Çapında Milyonlarca Mühendisin Güvendiği
Iron Software müşteri logoları
Ücretsiz 30 Günlük Deneme Anahtarınızı anında alın.
Kredi kartı veya hesap oluşturma gerektirmez
PDF için C# NuGet Kütüphanesi
NuGet ile yükleyin

Sürüm: 2026.9

PM > Install-Package IronPdf
nuget.org/packages/IronPdf/
  1. Çözüm Gezgini'nde Referanslar'a sağ tıklayın, NuGet Paketlerini Yönet
  2. Tarayıcıya tıklayın ve "IronPdf" arayın
  3. Paketi seçin ve yükleyin
C# PDF DLL
DLL İndir

Sürüm: 2026.9

veya Windows Yükleyiciyi şuradan buradan indirin.

  1. IronPDF'i, ~/Libs gibi bir yere, Solution dizininiz içinde indirin ve açın.
  2. Visual Studio Çözüm Gezgini'nde, Referanslar'a sağ tıklayın. Tarayıcı sekmesini seçin, "IronPdf.dll"

Lisanslar $999