C# Kullanarak HTML'den PDF'ye Sayfa Kesilmeleri Nasıl Yönetilir

C# ile HTML PDF'lerinde Sayfa Sonu Eklemek veya Önlemek

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

PDF belgelerindeki sayfa sonlarını kontrol etmek için HTML öğelerine page-break-after: always; ekleyin veya HTML'yi PDF'ye dönüştürürken C# içindeki IronPDF kullanarak page-break-inside: avoid; ile kesintileri önleyin.

IronPDF, PDF belgeleri içinde sayfa kesmelerini destekler. PDF belgeleri ile HTML arasındaki temel farklardan biri, HTML belgelerinin genellikle kaydırıldığı, PDF'lerin ise çok sayfalı olduğu ve yazdırılabildiğidir. Geliştiriciler, HTML dizelerini PDF'e dönüştürürken, genellikle sayfa kesimlerinin nerede olacağı üzerinde hassas bir kontrol sağlamalıdırlar, böylece belgeler profesyonel görünümlü olur.

Hızlı Başlangıç: HTML'den PDF'ye Dönüşümde Sayfa Sonlarını Uygulama

IronPDF kullanarak sayfa araları ile HTML'yi PDF'e dönüştürün. Bu örnek, doğru sayfa düzenini sağlamak için belirli HTML içeriğinden sonra sayfa sonu eklemeyi göstermektedir. page-break-after: always; stilini ekleyerek, geliştiriciler nereye sayfa sonu geleceğini kontrol eder, böylece ortaya çıkan PDF belgesinin okunabilirliğini ve düzenini iyileştirir. <div> <section> <article> <div> page-break-inside DIV page-break-inside: avoid page-break-inside: avoid DIV <thead> page-break-inside: avoid page-break-after: always page-break-before: always orphans widows break-inside break-after break-before

  1. IronPDF aşağıdaki NuGet Paket Yöneticisi ile yükleyin

    PM > Install-Package IronPdf
  2. Bu kod parçacığını kopyalayın ve ç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 için dağıtım yapın

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

    arrow pointer


HTML'den PDF'ye 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

page-break-after CSS özelliği, HTML'yi PDF'ye dönüştürürken sayfalama kontrolü için en güvenilir yöntemdir. Bu özellik, PDF oluşturucusuna bu stili içeren öğeden hemen sonra bir sayfa sonu eklemesini söyler. Özel kenar boşlukları veya belirli sayfa düzenleriyle çalışırken, sayfa sonlandırmaları içeriğin tam olarak istenilen yerde görünmesini sağlar.

page-break-after Neden Diğer Yöntemlerden Daha İyi Çalışır?

Bu örnekte, HTML içinde elimdeki table ve img aşağıdaki gibidir ve table ardından bir sayfa kesme ekleyerek onları iki ayrı sayfada istiyorum. page-break-after özelliği, page-break-before veya manuel aralık gibi alternatiflere göre farklı işleme motorlarında daha tutarlı sonuçlar sağlar. Yeni PDF'ler oluşturarak karmaşık düzenler oluştururken, bu yaklaşım öngörülebilir sayfa düzeni sağlar.

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

Sayfa sonları div, section ve article gibi blok seviyesi öğelerle etkili bir şekilde çalışır. Çeşitli HTML öğelerine sayfa sonu stilleri uygulayabilirsiniz, ancak içeriği özel bir div içinde sarma en güvenilir sonuçları sağlar. Bu, sayfalar arasında tutarlı bir şekilde görünmesi gereken başlıklar ve altbilgiler ile çalışırken ö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örüntü

<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ını Nasıl Uygularım?

: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 sayfadan oluşan bir PDF oluşturur: ilk sayfa table ve ikinci sayfa img:

Görsellerde Sayfa Kesilmelerini Nasıl Önlerim?

Bir resim veya table içinde sayfa kesmesini önlemek için, bir sarma div elemanına uygulanan CSS avoid özelliğini kullanın. Bu teknik, HTML'yi Chrome ile ayıklarken görsel bütünlüğün korunması ve PDF'lerinizin tam olarak istediğiniz gibi görüntülenmesini sağlamak için önemlidir.

<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örüntüleri Neden DIV Elemanlarına Sarmalıyım?

Resimleri div öğeleri içinde sarma, sayfa sonu davranışını daha iyi kontrol etme imkanı sağlar. page-break-inside özelliği en güvenilir şekilde blok seviyesi öğelerde çalışır. Görseller varsayılan olarak satır içi unsurlardır, bu nedenle bunları sarmak stilin doğru şekilde uygulanmasını sağlar. Bu yaklaşım, PDF formatında yapısını koruması gereken responsive CSS düzenleri ile çalışırken özellikle faydalıdır.

Resim Sayfa Sonlarıyla İlgili Yaygın Sorunlar Nelerdir?

Sık karşılaşılan sorunlar arasında görsellerin sayfalar arasında bölünmesi, sayfa sınırlarında kısmi render edilme ve başlık veya ilişkili metin kaybı yer alır. Bu sorunlar genellikle resimlerin sayfanın altında olduğu durumlarda meydana gelir. page-break-inside: avoid sarma kullanımı, tüm resmin ve onun konteynerinin bir ünite olarak bir sonraki sayfaya taşınmasını sağlayarak bu sorunları önler.

:path=/static-assets/pdf/content-code-examples/how-to/html-to-pdf-page-breaks-7.cs
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
Icon Quote related to Resim Sayfa Sonlarıyla İlgili Yaygın Sorunlar Nelerdir?

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 related to Resim Sayfa Sonlarıyla İlgili Yaygın Sorunlar Nelerdir?

Milan Jovanovic

Microsoft MVP

Vaka çalışmasını görüntüle
Icon Quote related to Resim Sayfa Sonlarıyla İlgili Yaygın Sorunlar Nelerdir?

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 related to Resim Sayfa Sonlarıyla İlgili Yaygın Sorunlar Nelerdir?

Brent Matzelle

Teknoloji Müdürü, OPYN

Vaka çalışmasını görüntüle
Icon Quote related to Resim Sayfa Sonlarıyla İlgili Yaygın Sorunlar Nelerdir?

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 related to Resim Sayfa Sonlarıyla İlgili Yaygın Sorunlar Nelerdir?

David Jones

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

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

Tablolardaki Sayfa Sonlarından Nasıl Kaçınabilirim?

Yukarıda gösterildiği gibi, tablolar içindeki sayfa sonları CSS avoid kullanılabilir. Bu, stilin blok seviyesi bir HTML düğümüne uygulandığından emin olmak için tablonun kendisine değil, bir sarma div daha iyi uygulanır. Detaylı HTML'den PDF'e dönüştürme rehberleri oluştururken, doğru tablo biçimlendirme okunabilirlik için çok önemlidir.

Tablo Başlıkları için thead Ne Zaman Kullanılmalı?

Çok sayfalı PDF sayfalarına yayılan büyük bir HTML tablosunun her sayfasında tablo başlıklarını ve altbilgilerini çoğaltmak için, tablo 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

öğesi, bir tablo birden fazla sayfaya yayıldığında her sayfada tablo başlıklarının tekrarlanmasını sağlar. Bu, özellikle finansal raporlar, veri listeleri ve her sayfada bağlama ihtiyaç duyulan belgeler için oldukça kullanışlıdır. İlk kurulum ve kurulum genel bakışı için, IronPDF bu HTML standartlarını otomatik olarak işler.

Tabloları DIV'ler İçine Sarmak Neden Önemlidir?

Tabloları div öğeleri içinde sarma ve sayfa sonu kontrolleri sağlamak çeşitli avantajlar sunar:

  • Tüm tablonun gerektiğinde bir bütün olarak bir sonraki sayfaya geçmesini sağlar
  • Başlıkların veri satırlarından ayrılmasını önler
  • Ek stil ve boşluk kontrolüne izin verir
  • Tablo ile birlikte kalan altyazılar veya açıklamalar eklemeyi kolaylaştırır

Gelişmiş CSS3 Ayarlarından Hangileri Sayfa Kesilmelerini Kontrol Eder?

Daha fazla kontrol sağlamak için, thead grubunuzun yanı sıra 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

Kompleks Düzenler için Hangi CSS Özellikleri En İyi Çalışır?

Karmaşık düzenler için birden fazla CSS özelliğini birleştirin:

  • page-break-inside - Öğelerin bölünmesini engeller
  • page-break-after - Bir elementten sonra kesme zorlar
  • page-break-before - Bir elementten önce kesme zorlar
  • orphans ve widows - Sayfa sonlarındaki minimum satırları kontrol eder
  • break-inside, break-after, break-before - Modern CSS3 alternatives

Bu özellikler, doğru akış ve okunaklılık ile profesyonel görünümlü PDF'ler oluşturmak için birlikte çalışır.

Sayfa Kesme Sorunlarını Nasıl Çözebilirim?

Sayfa sonları beklenildiği gibi çalışmadığında:

  1. HTML yapınızın geçerli olduğunu doğrulayın
  2. Tarzların blok düzeyindeki öğelere uygulandığını kontrol edin
  3. Önce basit örneklerle test edin, ardından karmaşıklık ekleyin
  4. Hesaplanmış stilleri incelemek için tarayıcı geliştirici araçlarını kullanın
  5. Ek kontrol için IronPDF'nin işleme seçeneklerini kullanmayı düşünün

Farklı PDF renderleyicilerin sayfa sonlarını biraz farklı şekilde işleyebileceğini unutmayın, bu yüzden tüm senaryolar arasında tutarlı sonuçlar elde etmek için özel kullanım durumunuzla test yapmak önemlidir.

Sıkça Sorulan Sorular

HTML'yi C# içinde PDF'ye dönüştürürken nasıl bir sayfa arası eklerim?

IronPDF kullanırken sayfa sonu eklemek için, HTML kodunuza sayfa sonunun oluşmasını istediğiniz yere <div style="page-break-after: always;"></div> ekleyin. IronPDF'nin ChromePdfRenderer bu CSS özelliğini tanır ve PDF belgesinde o noktada yeni bir sayfa oluşturur.

PDF dönüşümünde sayfa aralarını kontrol etmek için en güvenilir CSS özelliği nedir?

page-break-after: always; CSS özelliği, IronPDF kullanırken en güvenilir yöntemdir. Bu özellik, farklı işleme motorları arasında tutarlı sonuçlar sağlar ve dönüştürülen PDF belgelerinizde tahmin edilebilir bir sayfa düzeni sunar.

Tablolar veya görseller içinde sayfa aralarını nasıl önleyebilirim?

Tablolar veya resimler içinde istenmeyen sayfa sonlarını önlemek için page-break-inside: avoid; CSS özelliğini kullanın. IronPDF ile HTML'yi PDF'ye dönüştürürken bu stil, tablolarınızın ve resimlerinizin birden fazla sayfaya bölünmek yerine tek bir sayfada kalmasını sağlar.

Sayfa kırma stilleriyle en iyi çalışacak HTML elemanları hangileri?

Sayfa sonları <div>, <table> ve <section> gibi blok düzeyindeki ögelerle en etkili şekilde çalışır. IronPDF, HTML'den PDF'ye dönüştürürken en güvenilir sonuçlar için içeriği sayfa sonu stiline sahip özel bir

ögesi içinde sarmalayarak kullanmayı önerir.

Satır içi stiller yerine CSS seviyesinde sayfa kırmalarını kontrol edebilir miyim?

Evet, sayfa kırma stillerini satır içi stiller yerine CSS seviyesinde ayarlayabilirsiniz. IronPDF'nin render motoru, CSS stil dosyalarını tam olarak destekler ve böylece sayfa kırılma kurallarınızı CSS dosyanızda tanımlayabilir ve daha temiz, daha sürdürülebilir HTML kodu oluşturabilirsiniz.

Page-break-after yerine page-break-before kullanmamın nedeni nedir?

page-break-after özelliği, page-break-before özelliğine kıyasla farklı işleme motorları arasında daha tutarlı sonuçlar sağlar. IronPDF'yi karmaşık düzenlere sahip PDF'ler oluşturmak için kullanırken, page-break-after daha tahmin edilebilir ve güvenilir bir sayfa düzeni davranışı sunar.

Curtis Chau
Teknik Yazar

Curtis Chau, Bilgisayar Bilimleri alanında Lisans Derecesine (Carleton Üniversitesi) sahip ve Node.js, TypeScript, JavaScript ve React konularında uzmanlaşmış ön uç geliştirmeyle ilgileniyor. Sezgisel ve estetik açıdan hoş kullanıcı arayüzleri oluşturma tutkunu, Curtis modern çerçevelerle çalışmayı ve iyi yapı...

Daha Fazla Oku
Başlamaya Hazır mısınız?
Nuget İndirmeler 19,936,792 | Sürüm: 2026.7 yeni yayınlandı
Still Scrolling Icon

Hâlâ Kaydırıyor Musunuz?

Hızlıca kanıt ister misiniz? PM > Install-Package IronPdf
bir örnek çalıştır HTML'nizi bir PDF'ye dönüştüğünü izleyin.