C# ile HTML PDF'lerinde Sayfa Sonu Eklemek veya Önlemek
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ı UygulamaIronPDF 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
-
1Install IronPDF with NuGet Package Manager
-
2Bu 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");C# -
3Canlı ortamınızda test için dağıtım yapın
Ücretsiz deneme ile bugün projenizde IronPDF kullanmaya başlayın
Asgari İş Akışı (5 adım)

- PDF'de sayfa sonları kullanmak için C# kütüphanesini indirin
- HTML dizesine Sayfa Sonları Uygula ve PDF'ye dönüştür
- Kaçın ifadesini
page-break-insideözniteliğine ayarlayarak resimlerdeki sayfa kesimlerinden kaçının - Tablolarda Sayfa Sonlarını Önlemek İçin Aynısını Tablolar İçin Yapın
- Stili CSS Düzeyinde Ayarlayın
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>
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>
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" />
C# Kodunda Sayfa Sonlarını Nasıl Uygularım?
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")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>
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.
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")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.
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> öğ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>
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 engellerpage-break-after- Bir elementten sonra kesme zorlarpage-break-before- Bir elementten önce kesme zorlarorphansvewidows- Sayfa sonlarındaki minimum satırları kontrol ederbreak-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:
- HTML yapınızın geçerli olduğunu doğrulayın
- Tarzların blok düzeyindeki öğelere uygulandığını kontrol edin
- Önce basit örneklerle test edin, ardından karmaşıklık ekleyin
- Hesaplanmış stilleri incelemek için tarayıcı geliştirici araçlarını kullanın
- 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 <div> ö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.
How can I ensure tables do not break across pages when creating PDFs with IronPDF?
Wrap the table in a `div` with `page-break-inside: avoid;`. This approach ensures the entire table is kept together as a unit, preventing headers from separating from data rows in IronPDF-generated PDFs.
Why is it important to wrap images and tables in a `div` element when using page breaks?
Wrapping images and tables in a `div` element ensures that page break properties are applied to the entire block, providing better control over their pagination in the resulting PDFs produced by IronPDF.
What are common issues with image page breaks in PDFs and how can IronPDF help?
Common issues include images splitting across pages or losing associated text. Using IronPDF, you can prevent these problems by applying `page-break-inside: avoid` to the image wrapper, ensuring they appear as intended.
How do advanced CSS3 settings enhance page break control in IronPDF?
Advanced CSS3 settings, such as `orphans`, `widows`, and `break-inside`, give greater rule-based control over pagination. When combined with IronPDF's features, they help produce well-structured PDF documents.

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ılandırılmış, görsel olarak çekici kılavuzlar oluşturmayı seviyor.