HTML'den PDF'e Geçişleri Yönetmek

HTML PDF'lerinde C# ile Sayfa Sonları Ekle veya Önleyin

This article was translated from English: Does it need improvement?
Translated
View the article in English

PDF belgelerinde sayfa sonlarını kontrol etmek için HTML öğelerine page-break-after: always; ekleyerek veya IronPDF kullanarak HTML'yi PDF'ye dönüştürürken kesilmeleri önlemek için page-break-inside: avoid; kullanarak.

IronPDF, PDF belgelerinde sayfa sonlarını destekler. PDF belgeleri ve HTML arasındaki ana fark, HTML belgelerinin kayma eğiliminde olması, PDF'lerin ise çok sayfaya sahip olup yazdırılabilmesidir. HTML dizilerini PDF'ye dönüştürürken, geliştiriciler genellikle sayfaların nerede kırılacağını kesin olarak kontrol etmelidirler, bu da profesyonel görünümlü belgeler oluşturmak için gereklidir.

Hızlı Başlat: HTML'den PDF'ye Dönüştürmede Sayfa Sonları Uygulama

IronPDF kullanarak, Iron'dan HTML'yi PDF'ye sayfa sonları ile dönüştürün. Bu örnek, doğru paginasyon sağlamak için belirli HTML içeriğinden sonra bir sayfa sonu eklenmesi işlemini gösterir. Geliştiriciler, page-break-after: always; stilini ekleyerek sayfa sonlarının nerede oluşacağını kontrol eder, bu da oluşan PDF belgesinin okunabilirliğini ve düzenini iyileştirir.

  1. NuGet Paket Yöneticisi ile https://www.nuget.org/packages/IronPdf yükleyin

    PM > Install-Package IronPdf
  2. Bu kod parçasını kopyalayıp çalıştırın.

    new IronPdf.ChromePdfRenderer()
      .RenderHtmlAsPdf("<html><body><h1>Hello World!</h1><div style='page-break-after: always;'></div></body></html>")
      .SaveAs("pageWithBreaks.pdf");
  3. Canlı ortamınızda test etmek için dağıtın

    Bugün projenizde IronPDF kullanmaya başlayın ücretsiz deneme ile

    arrow pointer


HTML'yi PDF'ye Dönüştürmede Sayfa Sonu Nasıl Eklenir?

HTML'de bir sayfa sonu oluşturmak için, HTML kodunuza şunu ekleyin:

<div style="page-break-after: always;"></div>
<div style="page-break-after: always;"></div>
HTML

HTML'yi PDF'ye dönüştürürken sayfa düzenlemesini kontrol etmenin en güvenilir yöntemi page-break-after CSS özelliğidir. Bu özellik, bu stili içeren öğeden hemen sonra PDF işleyicisine bir sayfa sonu eklemesini söyler. PDF oluştururken özel kenar boşluklarını veya belirli sayfa düzenleriyle çalışırken, sayfa sonları içeriğin tam olarak istediğiniz yerde görünmesini sağlar.

Sayfa Sonu Olmaktan Daha İyi Çalışan Neden page-break-after Yöntemi?

Örnek olarak, HTML'mde aşağıdaki tablo ve görseller var ve onları ayrı sayfalara almak istiyorum, tablo sonrası bir sayfa sonu ekleyerek. page-break-after özelliği, farklı işleme motorları arasında page-break-before veya manuel aralıklar gibi alternatiflere kıyasla daha tutarlı sonuçlar sağlar. Yeni PDF'ler oluştururken kompleks düzenlerle çalışan bu yaklaşım, tahmin edilebilir sayfa düzenlemesini garanti eder.

Sayfa Sonları için Hangi Öğeleri Kullanmalıyım?

Sayfa sonları <div>, <section> ve <article> gibi blok düzeyinde öğelerle etkili bir şekilde çalışır. Çeşitli HTML öğelerine sayfa sonu stilleri uygulayabilirsiniz, ancak içeriği özel bir <div> içine almak en güvenilir sonuçları sağlar. Üstbilgiler ve altbilgiler gibi her sayfada tutarlı şekilde görünmesi gereken şeylerle çalışırken bu özellikle önemlidir.

Tablo

<table style="border: 1px solid #000000">
  <tr>
    <th>Company</th>
    <th>Product</th>
  </tr>
  <tr>
    <td>Iron Software</td>
    <td>IronPDF</td>
  </tr>
  <tr>
    <td>Iron Software</td>
    <td>IronOCR</td>
  </tr>
</table>
<table style="border: 1px solid #000000">
  <tr>
    <th>Company</th>
    <th>Product</th>
  </tr>
  <tr>
    <td>Iron Software</td>
    <td>IronPDF</td>
  </tr>
  <tr>
    <td>Iron Software</td>
    <td>IronOCR</td>
  </tr>
</table>
HTML

Görsel

<img src="/static-assets/pdf/how-to/html-to-pdf-page-breaks/ironpdf-logo-text-dotnet.svg" style="border:5px solid #000000; padding:3px; margin:5px" />
<img src="/static-assets/pdf/how-to/html-to-pdf-page-breaks/ironpdf-logo-text-dotnet.svg" style="border:5px solid #000000; padding:3px; margin:5px" />
HTML

C# Kodunda Sayfa Sonları Nasıl Uygulanır?

:path=/static-assets/pdf/content-code-examples/how-to/html-to-pdf-page-breaks-page-break.cs
using IronPdf;

const string html = @"
  <table style='border: 1px solid #000000'>
    <tr>
      <th>Company</th>
      <th>Product</th>
    </tr>
    <tr>
      <td>Iron Software</td>
      <td>IronPDF</td>
    </tr>
    <tr>
      <td>Iron Software</td>
      <td>IronOCR</td>
    </tr>
  </table>

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

  <img src='https://ironpdf.com/img/products/ironpdf-logo-text-dotnet.svg'>";

var renderer = new ChromePdfRenderer();

var pdf = renderer.RenderHtmlAsPdf(html);
pdf.SaveAs("Page_Break.pdf");
Imports IronPdf

Private Const html As String = "
  <table style='border: 1px solid #000000'>
    <tr>
      <th>Company</th>
      <th>Product</th>
    </tr>
    <tr>
      <td>Iron Software</td>
      <td>IronPDF</td>
    </tr>
    <tr>
      <td>Iron Software</td>
      <td>IronOCR</td>
    </tr>
  </table>

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

  <img src='https://ironpdf.com/img/products/ironpdf-logo-text-dotnet.svg'>"

Private renderer = New ChromePdfRenderer()

Private pdf = renderer.RenderHtmlAsPdf(html)
pdf.SaveAs("Page_Break.pdf")
$vbLabelText   $csharpLabel

Yukarıdaki kod, 2 sayfalık bir PDF oluşturur: ilk sayfada tablo ve ikinci sayfada görsel bulunur:

Görsellerde Sayfa Kırılmalarını Nasıl Önlerim?

Bir resim veya tablo içinde sayfa sonundan kaçınmak için, saran bir DIV elementine uygulanan CSS page-break-inside özelliğini kullanın. Chrome ile HTML'yi hata ayıklarken görsel bütünlüğü korumak için bu teknik önemlidir ve PDF'lerinizin amaçlandığı gibi oluşturulmasını sağlar.

<div style="page-break-inside: avoid">
    <img src="no-break-me.png" />
</div>
<div style="page-break-inside: avoid">
    <img src="no-break-me.png" />
</div>
HTML

Görselleri Neden DIV Öğelerinde Sarmalıyım?

Görselleri DIV elemanları içinde sarmak, sayfa kırılma davranışı üzerinde daha iyi kontrol sağlar. page-break-inside: avoid özelliği blok düzeyindeki öğelerde en güvenilir şekilde çalışır. Görseller varsayılan olarak satır içi elemanlardır, dolayısıyla onları sarmak stilin doğru şekilde uygulanmasını garantiler. Bu yaklaşım, duyarlı CSS düzenleriyle çalışırken, PDF formatında yapılarını korumaları gerektiğinde özellikle faydalıdır.

Görsel Sayfa Kırılmaları ile İlgili Yaygın Sorunlar Nelerdir?

Yaygın sorunlar arasında sayfalar arasında bölünen görseller, sayfa sınırlarında kısmi işleme ve başlıklar veya ilgili metnin kaybı bulunur. Bu sorunlar genellikle görseller sayfanın en altına yakın olduğunda meydana gelir. page-break-inside: avoid sarmalayıcısını kullanmak, tüm resmin ve konteynerinin bir ünite olarak sonraki sayfaya geçmesini sağlayarak bu sorunları önler.

using IronPdf;

// Example showing how to prevent image breaks in a more complex layout
const string htmlWithProtectedImage = @"
<html>
<head>
    <style>
        .no-break { page-break-inside: avoid; }
        .image-container { 
            border: 2px solid #333; 
            padding: 10px; 
            margin: 20px 0;
        }
    </style>
</head>
<body>
    <h1>Product Gallery</h1>
    <p>Our featured products are displayed below:</p>

    <div class='no-break image-container'>
        <img src='product1.jpg' alt='Product 1' />
        <p>Product 1 Description</p>
    </div>

    <div class='no-break image-container'>
        <img src='product2.jpg' alt='Product 2' />
        <p>Product 2 Description</p>
    </div>
</body>
</html>";

var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf(htmlWithProtectedImage);
pdf.SaveAs("ProductGallery.pdf");
using IronPdf;

// Example showing how to prevent image breaks in a more complex layout
const string htmlWithProtectedImage = @"
<html>
<head>
    <style>
        .no-break { page-break-inside: avoid; }
        .image-container { 
            border: 2px solid #333; 
            padding: 10px; 
            margin: 20px 0;
        }
    </style>
</head>
<body>
    <h1>Product Gallery</h1>
    <p>Our featured products are displayed below:</p>

    <div class='no-break image-container'>
        <img src='product1.jpg' alt='Product 1' />
        <p>Product 1 Description</p>
    </div>

    <div class='no-break image-container'>
        <img src='product2.jpg' alt='Product 2' />
        <p>Product 2 Description</p>
    </div>
</body>
</html>";

var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf(htmlWithProtectedImage);
pdf.SaveAs("ProductGallery.pdf");
Imports IronPdf

' Example showing how to prevent image breaks in a more complex layout
Const htmlWithProtectedImage As String = "
<html>
<head>
    <style>
        .no-break { page-break-inside: avoid; }
        .image-container { 
            border: 2px solid #333; 
            padding: 10px; 
            margin: 20px 0;
        }
    </style>
</head>
<body>
    <h1>Product Gallery</h1>
    <p>Our featured products are displayed below:</p>

    <div class='no-break image-container'>
        <img src='product1.jpg' alt='Product 1' />
        <p>Product 1 Description</p>
    </div>

    <div class='no-break image-container'>
        <img src='product2.jpg' alt='Product 2' />
        <p>Product 2 Description</p>
    </div>
</body>
</html>"

Dim renderer As New ChromePdfRenderer()
Dim pdf = renderer.RenderHtmlAsPdf(htmlWithProtectedImage)
pdf.SaveAs("ProductGallery.pdf")
$vbLabelText   $csharpLabel

Tablolarda Sayfa Kırılmalarını Nasıl Önlerim?

Yukarıda gösterildiği gibi, tablolar içindeki sayfa sonları, CSS page-break-inside: avoid kullanılarak önlenebilir. Bu, stilin blok düzeyinde bir HTML düğümüne uygulandığından emin olmak için tablonun kendisine değil, saran bir DIV'e daha iyi uygulanır. Kapsamlı HTML'den PDF'e eğitimleri oluştururken, düzgün tablo formatlama okunabilirlik için önemlidir.

Tablo Başlıkları için Ne Zaman thead Kullanmalıyım?

Birden fazla PDF sayfasına yayılan büyük bir HTML tablosunun her sayfasında tablo başlıklarını ve altbilgilerini çoğaltmak için tablonun içinde bir <thead> grubu kullanın:

<thead>
    <tr>
        <th>C Sharp</th><th>VB</th>
    </tr>
</thead>
<thead>
    <tr>
        <th>C Sharp</th><th>VB</th>
    </tr>
</thead>
HTML

Bir tablo birden fazla sayfaya yayıldığında, <thead> öğesi tablo başlıklarının her sayfada yinelemesini sağlar. Bu, özellikle finansal raporlar, veri listeleri ve her sayfada baglam gerektiren belgeler icin kullanislidir. Başlangic kurulumu ve kurulum genel bakisi icin, IronPDF bu HTML standartlarini otomatik olarak yonetir.

Neden Tablolari DIV'ler Ile Sarmak Onemlidir?

Tablolarin DIV ogeleri icinde sayfa kesme kontrolu ile sarilmasi bircok fayda saglar:

  • Gerekirse tüm tablonun bir birim olarak bir sonraki sayfaya tasinmasini saglar
  • Basliklarin veri satirlarindan ayrilmasini engeller
  • Ek stil ve bosluk kontrolune olanak tanir
  • Tablonun yaninda kalan aciklamalar veya tanimlamalar eklemeyi kolaylastirir

Sayfa Kesme Kontrollerini Yoneten Gelişmiş CSS3 Ayarlari Nelerdir?

Daha fazla kontrol sağlamak için, thead grubunuza ek olarak CSS3 kullanın:

<style type="text/css">
    table { page-break-inside:auto }
    tr { page-break-inside:avoid; page-break-after:auto }
    thead { display:table-header-group }
    tfoot { display:table-footer-group }
</style>
<style type="text/css">
    table { page-break-inside:auto }
    tr { page-break-inside:avoid; page-break-after:auto }
    thead { display:table-header-group }
    tfoot { display:table-footer-group }
</style>
HTML

Karmasik Layoutlar Icin En Iyi Calisan CSS Özellikleri Hangileridir?

Karmasik layoutlar icin, birden fazla CSS ozelligini birlestirin:

  • page-break-inside: avoid - Öğelerin bölünmesini önler
  • page-break-after: always - Bir öğeden sonra kırılmaya zorlar
  • page-break-before: always - Bir öğeden önce kırılmaya zorlar
  • orphans ve widows - Sayfa sonlarında minimum satırları kontrol eder
  • break-inside, break-after, break-before - Modern CSS3 alternatifleri

Bu özellikler birlikte calisarak dogru akis ve okunabilirlik ile profesyonel gorunumde PDF'ler oluşturur.

Sayfa Kesme Sorunlarini Nasıl Gideririm?

Sayfa kesmeleri beklendigi gibi calismadiginda:

  1. HTML yapinizin gecerli oldugunu dogrulayin
  2. Stillarin block seviyesindeki ogelere uygulandigini kontrol edin
  3. Once basit örneklerle test yapin, sonra karmaşıklığı arttirin
  4. Tarayici geliştirici araclarini kullanarak hesaplanmis stilleri inceleyin
  5. Ek kontrol icin IronPDF'in arasina seçeneklerini dusunun

Farkli PDF hazirlayicilarinin sayfa kesmelerini slight farkli ele alabilecegini unutmayin, bu nedenle tüm senaryolar icin tutarli sonuclar elde etmek icin spesifik kullanim durumunuzla test etmek onemlidir.

Sıkça Sorulan Sorular

C#'te HTML'yi PDF'e cevirirken nasıl sayfa sonu eklerim?

IronPDF kullanirken sayfa sonu eklemek için HTML kodunuza sayfa sonu olusmasi gereken yerlere `

` ekleyin. IronPDF's ChromePdfRenderer bu CSS özelligini tanir ve PDF belgesinde o noktada yeni bir sayfa oluşturur.

PDF'e cevirirken sayfa sonlarini kontrol etmek için en guvenilir CSS özelligi nedir?

IronPDF kullanirken `page-break-after: always;` CSS özelligi en guvenilir yöntemdir. Bu özellik, farkli render motorlari arasinda tutarli sonuclar saglar ve cevrilen PDF belgelerinizde ongorulebilir sayfalama saglar.

Tablo ya da resimlerin icindeki sayfa sonlarindan nasıl kacarim?

Tablolar veya resimler icinde istenmeyen sayfa sonlarini onlemek için, `page-break-inside: avoid;` CSS özelligini kullanin. IronPDF ile HTML'yi PDF'e cevirirken bu stil tablolarinizin ve resimlerinizin birden çok sayfa uzerinde bolunmek yerine bir sayfada kalmalarini saglar.

Hangi HTML ogeleri sayfa break stilleri ile en iyi çalışir?

Sayfa sonlari, `

`, ``, ve `
` gibi blok seviyesinde ogelerle en etkili şekilde çalışir. IronPDF, HTML'yi PDF'e cevirirken en guvenilir sonuclar için iceriği sayfa break stili olan ozgu bir `
` elemani icinde sarmayi önerir.

CSS seviyesinde mi yoksa satir ici stiller yerine mi sayfa sonlarini kontrol edebilirim?

Evet, sayfa sonu stillerini satir ici stiller yerine CSS seviyesinde belirleyebilirsiniz. IronPDF'nin render motoru CSS stil sayfalarini tam olarak destekler, bu da sayfa sonu kurallarini CSS dosyanizda tanımlayarak daha temiz ve daha iyi bakimi yapilabilir HTML kodu surdurmenizi saglar.

Neden page-break-after kullanmalıyım page-break-before yerine?

`page-break-after` özelligi, `page-break-before` ile karsilastirildiginda farkli render motorlari arasinda daha tutarli sonuclar saglar. IronPDF'yi kullarak karmasik düzenlere sahip PDF'ler oluştururken, page-break-after daha tahmin edilebilir ve guvenilir bir sayfalama davranisi saglar.

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
Başlamaya Hazır mısınız?
Nuget Indirmeler 18,332,619 | Sürüm: 2026.4 yeni yayınlandı
Still Scrolling Icon

Hala Kaydiriyor musunuz?

Hızlı bir kanit mi istiyorsunuz? PM > Install-Package IronPdf
bir örnek çalıştır HTML'nizin PDF olduğunu izleyin.

Iron Destek Ekibi

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