IronPDF, Python geliştiricilerine HTML işaretlemesinden üretime hazır PDF dosyalarına doğrudan bir yol sunar — ara tasarım araçları, özel düzen motorları veya ayrı bir işleme süreci gerekmez. Kütüphanenin ChromePdfRenderer sınıfı, arka planda Chromium tabanlı bir motor kullanır, bu sayede Chrome'da doğru görüntülenen tüm HTML'ler PDF'ye doğru bir şekilde dönüştürülür. Bu eğitim her desteklenen dönüşüm yöntemini — HTML dizgeleri, yerel HTML dosyaları ve canlı URL'ler — adım adım açıklar ve ardından sayfa boyutu, kenar boşlukları, üstbilgiler, altbilgiler ve daha fazlasını kontrol etmenizi sağlayan işleme seçeneklerini kapsar.
Eşlik eden bir eğitim, .NET uygulamalarında HTML'yi PDF'ye dönüştürme ihtiyacınız varsa, C# veya VB.NET iş akışına sahiptir.
Hızlı Başlangıç: Python'da HTML'den PDF'ye Dönüştür
Python'da HTML'yi PDF'ye Nasıl Dönüştürebilirim

- IronPDF for Python'u pip ile yükleyin
- Kütüphaneyi
from ironpdf import *ile içe aktarın ChromePdfRendereroluşturunRenderHtmlAsPdf,RenderUrlAsPdfveyaRenderHtmlFileAsPdfçağırın- Sonucu
pdf.SaveAs("output.pdf")ile kaydedin
İçindekiler
- IronPDF for Python'u Nasıl Yükleriz?
- IronPDF'i Dönüştürmeden Önce Nasıl Yapılandırırsınız?
- HTML Dizesini PDF'ye Nasıl Dönüştürürsünüz?
- Bir URL'yi PDF'ye Nasıl Dönüştürürsünüz?
- HTML Dosyasını PDF'ye Nasıl Dönüştürürsünüz?
- PDF İşleme Seçeneklerini Nasıl Kontrol Edebilirsiniz?
- Özel Üstbilgiler ve Altbilgiler Nasıl Eklersiniz?
- Bir Sonraki Adımlar Nelerdir?
Başlarken
IronPDF'i Python İçin Nasıl Yükleyebilirsiniz?
IronPDF, Python'un standart paket yöneticisi olan pip aracılığıyla dağıtılır. En son sürümü yüklemek için bir terminalde aşağıdaki komutu çalıştırın:
//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/install.sh
pip install ironpdf//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/install.sh
pip install ironpdfBelirli bir sürümü sabitlemek için — CI hatları veya konteynerleştirilmiş ortamlar için kullanışlı — sürüm numarasını ekleyin:
//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/install-versioned.sh
pip install ironpdf==2024.x.x//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/install-versioned.sh
pip install ironpdf==2024.x.x{i:(IronPDF for Python, IronPDF .NET kütüphanesi üzerine inşa edilmiştir ve [en az] .NET 6.0 SDK gerektirir. üzerine kurulmuş ve daha sonrasını gerektirir. Herhangi bir IronPDF Python kodunu çalıştırmadan önce SDK'yı yükleyin.)}]
IronPDF ilk kez başlatıldığında, uyumlu bir Chromium ikili dosyası indirir. Bu indirme, yeni bir makinede bir an alır, ancak her ortam için yalnızca bir kez gerçekleşir. Sonraki çalıştırmalar çok daha hızlı başlar çünkü ikili dosya yerel olarak önbelleğe alınır.
Kılavuz ve Kod Örnekleri
IronPDF'i Dönüştürmeden Önce Nasıl Yapılandırırsınız?
İlk dönüştürme çağrısından önce iki kurulum görevi tamamlanmaya değer: bir lisans anahtarı ayarlamak ve — isteğe bağlı olarak — bir günlük dosyası konumu yapılandırmak.
Paketin İçe Aktarılması
IronPDF kullanan her Python dosyası, bu tek içe aktarma satırına ihtiyaç duyar. Dosyanın üstüne yerleştirin:
//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/import.py
from ironpdf import *//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/import.py
from ironpdf import *Tüm IronPDF sınıfları — ChromePdfRenderer, PdfDocument, License, Logger ve diğerleri — bu joker karakterli içe aktarma yoluyla kullanılabilir hale gelir.
Lisans Anahtarının Ayarlanması
Bir lisans anahtarı olmadan, IronPDF her oluşturulan PDF'ye mozaik bir filigran ekler. Filigran, geliştirme ve test için uygundur, ancak üretim dağıtımları geçerli bir anahtar gerektirir.
Lisans anahtarı olmadan oluşturulan PDF'ler, üzerlerinde karo filigran içerir. Bir anahtar almak için lisans sayfasını ziyaret edin.
Diğer IronPDF çağrılarından önce anahtarı ayarlayın:
//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/set-license.py
from ironpdf import *
# Set the license key before any PDF operations
License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/set-license.py
from ironpdf import *
# Set the license key before any PDF operations
License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"Geçici bir anahtar almak için ücretsiz bir deneme başlatın veya kısıtlamasız üretim kullanımı için bir lisans satın alın.
Günlük Çıkışını Yapılandırma
IronPDF, komut dosyasının çalışma dizininde Default.log adlı bir dosyaya tanılama çıktısı yazar. Günlüğü farklı bir yola yönlendirmek veya hata ayıklama için daha fazla ayrıntı yakalamak için, ilk dönüştürmeden önce Logger özelliklerini ayarlayın:
//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/configure-logging.py
from ironpdf import *
# Configure logging before running any conversions
Logger.EnableDebugging = True
Logger.LogFilePath = "ironpdf-debug.log"
Logger.LoggingMode = Logger.LoggingModes.All//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/configure-logging.py
from ironpdf import *
# Configure logging before running any conversions
Logger.EnableDebugging = True
Logger.LogFilePath = "ironpdf-debug.log"
Logger.LoggingMode = Logger.LoggingModes.AllLogger.LogFilePath ilk PDF dönüştürme çağrısından önce ayarlanmalıdır. Sonradan yapılan değişikliklerin mevcut oturum üzerinde hiçbir etkisi yoktur.Ayrıntılı günlükler, belirli bir HTML sayfasının neden beklenildiği gibi render edilmediğini teşhis ederken en kullanışlı olanıdır — bunlar ağ talepleri, CSS yükleme olayları ve JavaScript çalıştırma sürelerini kaydeder.
Bir HTML Dizgesini PDF'ye Nasıl Dönüştürürsünüz?
Bellekteki bir HTML dizesini dönüştürmek en doğrudan yaklaşımdır ve HTML'nin programatik olarak oluşturulduğu durumlarda iyi çalışır — örneğin, bir Jinja2 şablonundan veya veritabanı destekli bir rapordan.
Temel HTML Dizesi Dönüşümü
ChromePdfRenderer'yi örneklendirin, HTML dizesini RenderHtmlAsPdf'ye aktarın ve döndürülen PdfDocument üzerinde SaveAs'yi çağırın:
//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/html-string-basic.py
from ironpdf import *
renderer = ChromePdfRenderer()
# Convert an HTML string to a PDF document
pdf = renderer.RenderHtmlAsPdf("<h1>Hello from IronPDF!</h1><p>Generated in Python.</p>")
pdf.SaveAs("hello.pdf")//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/html-string-basic.py
from ironpdf import *
renderer = ChromePdfRenderer()
# Convert an HTML string to a PDF document
pdf = renderer.RenderHtmlAsPdf("<h1>Hello from IronPDF!</h1><p>Generated in Python.</p>")
pdf.SaveAs("hello.pdf")ChromePdfRenderer, HTML, CSS ve JavaScript'i modern bir tarayıcının yaptığı gibi işler. Chrome'da doğru şekilde işlenen her içerik, doğru bir PDF üretecektir.
Dış Varlıklara Sahip HTML Dizesi
HTML dizesi yerel varlıklara (stil sayfaları, resimler, komut dosyaları) atıfta bulunduğunda, dizin yolunu RenderHtmlAsPdf'ye ikinci argüman olarak geçirin. IronPDF, bu yolu göreceli referansları çözerken temel URL olarak kullanır:
//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/html-string-assets.py
from ironpdf import *
html_content = """
<html>
<head>
<title>Styled Report</title>
<link rel='stylesheet' href='assets/style.css'>
</head>
<body>
<h1>Monthly Report</h1>
<img src='assets/logo.png' alt='Company logo'>
<p>Data as of Q1 2024.</p>
</body>
</html>
"""
renderer = ChromePdfRenderer()
# The second argument sets the base path for resolving relative asset URLs
pdf = renderer.RenderHtmlAsPdf(html_content, "./")
pdf.SaveAs("styled-report.pdf")//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/html-string-assets.py
from ironpdf import *
html_content = """
<html>
<head>
<title>Styled Report</title>
<link rel='stylesheet' href='assets/style.css'>
</head>
<body>
<h1>Monthly Report</h1>
<img src='assets/logo.png' alt='Company logo'>
<p>Data as of Q1 2024.</p>
</body>
</html>
"""
renderer = ChromePdfRenderer()
# The second argument sets the base path for resolving relative asset URLs
pdf = renderer.RenderHtmlAsPdf(html_content, "./")
pdf.SaveAs("styled-report.pdf")Temel yol, herhangi bir yerel dizine veya bir ağ paylaşımına işaret edebilir. Alt dizinlerdeki varlıklar buna göre göreceli olarak çözülür. Karmaşık HTML dizelerini içeren daha fazla desen için HTML dizesini PDF'ye çevirme kodu örneğine bakın.
Bir URL'yi PDF'ye Nasıl Dönüştürürsünüz?
RenderUrlAsPdf yöntemi, canlı bir URL'yi alır, sayfanın tamamen yüklenmesini bekler (JavaScript ile çalıştırılan içerikler dahil) ve görüntülenen sonucu PDF/A'ya dönüştürür. Bu, son görsel durumun JavaScript çalıştırmasına bağlı olduğu gösterge panolarını, raporları veya herhangi bir sayfayı yakalamak için uygundur.
//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/url-to-pdf.py
from ironpdf import *
renderer = ChromePdfRenderer()
# Fetch and convert a live web page to PDF
pdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Portable_Document_Format")
pdf.SaveAs("wikipedia-pdf.pdf")//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/url-to-pdf.py
from ironpdf import *
renderer = ChromePdfRenderer()
# Fetch and convert a live web page to PDF
pdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Portable_Document_Format")
pdf.SaveAs("wikipedia-pdf.pdf")ChromePdfRenderer örneğinde çerezleri veya HTTP istek başlıklarını ayarlayın, ardından RenderUrlAsPdf'yi çağırın. Ayrıntılar için HTTP giriş kimlik bilgileri kılavuzuna bakın.Hedef sayfa asenkron içerik yüklüyorsa, IronPDF, Chromium render motorunun belgenin tamamen boyandığını belirtmesi için bekler. Ağır JavaScript içeren veya gecikmeli ağ istekleri olan sayfalar için, WaitFor üzerindeki ChromePdfRenderOptions özelliklerini ayarlamayı düşünün (aşağıdaki görüntüleme seçenekleri bölümünde ele alınmıştır). URL'yi PDF'ye çevirme kodu örneği, ek yapılandırma desenlerini gösterir.
Bir HTML Dosyasını PDF'ye Nasıl Dönüştürürsünüz?
RenderHtmlFileAsPdf, yerel bir HTML dosyasının yolunu kabul eder ve dosyayı doğrudan dönüştürür. HTML içindeki göreceli yollar — CSS dosyaları, resimler veya JavaScript'e — otomatik olarak HTML dosyasının kendi dizinine göre çözülür, bu yüzden bir temel yol argümanına gerek yoktur.
//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/html-file-to-pdf.py
from ironpdf import *
renderer = ChromePdfRenderer()
# Convert a local HTML file (and its linked CSS/JS) to PDF
pdf = renderer.RenderHtmlFileAsPdf("invoices/TestInvoice1.html")
pdf.SaveAs("invoice.pdf")//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/html-file-to-pdf.py
from ironpdf import *
renderer = ChromePdfRenderer()
# Convert a local HTML file (and its linked CSS/JS) to PDF
pdf = renderer.RenderHtmlFileAsPdf("invoices/TestInvoice1.html")
pdf.SaveAs("invoice.pdf")Bu yöntem, bir HTML şablonunun diske yazılmış olduğu sunucu tarafı belge üretimi için özellikle kullanışlıdır — bu, Django veya Flask kullanarak Jinja2 şablonlarını dosyalara dönüştürüp indirmek için PDF'ye çevirirken yaygın bir desendir.
IronPDF, HTML dosyasının konumuna göre <link>, <script> ve <img> etiketlerini çözümler, böylece bağlantılı stil sayfaları, gömülü yazı tipleri ve resimler PDF'de tıpkı tarayıcıda olduğu gibi görünür. Bu süreç, RenderHtmlAsPdf'nin satır içi varlıkları nasıl işlediğini yansıtmaktadır, ancak açık bir temel yolun sağlanması gerekmemesi farkı vardır.
PDF Render Seçeneklerini Nasıl Kontrol Edersiniz?
ChromePdfRenderOptions, sayfa düzenini, kenar boşluklarını, kağıt boyutunu ve diğer çıktı özelliklerini kontrol etmek için ChromePdfRenderer'e (veya doğrudan herhangi bir render yöntemine) aktarılan yapılandırma nesnesidir. Dönüştürmeden önce seçenekleri ayarlamak, PDF çıktısını istenildiği gibi özelleştirmenin standart yoludur.
Kağıt Boyutu ve Yönlendirme
//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/render-options-paper.py
from ironpdf import *
renderer = ChromePdfRenderer()
# Configure page layout before rendering
renderer.RenderingOptions.PaperSize = PdfPaperSize.A4
renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Landscape
renderer.RenderingOptions.MarginTop = 20
renderer.RenderingOptions.MarginBottom = 20
renderer.RenderingOptions.MarginLeft = 15
renderer.RenderingOptions.MarginRight = 15
pdf = renderer.RenderHtmlAsPdf("<h1>Landscape Report</h1><p>Content here.</p>")
pdf.SaveAs("landscape-a4.pdf")//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/render-options-paper.py
from ironpdf import *
renderer = ChromePdfRenderer()
# Configure page layout before rendering
renderer.RenderingOptions.PaperSize = PdfPaperSize.A4
renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Landscape
renderer.RenderingOptions.MarginTop = 20
renderer.RenderingOptions.MarginBottom = 20
renderer.RenderingOptions.MarginLeft = 15
renderer.RenderingOptions.MarginRight = 15
pdf = renderer.RenderHtmlAsPdf("<h1>Landscape Report</h1><p>Content here.</p>")
pdf.SaveAs("landscape-a4.pdf")Kenar boşlukları milimetre cinsinden ifade edilir. PdfPaperSize, A0'dan A10'a, Letter, Legal, Tabloid gibi tüm standart ISO boyutlarını ve Custom ile CustomPaperWidth ve CustomPaperHeight tarafından tanımlanan rastgele boyutları destekler.
Özel Kağıt Boyutları
Standart kağıt boyutları çıktı gereksinimini karşılamıyorsa — örneğin, bir fiş veya etiket yazıcı formatı — genişliği ve yüksekliği açıkça tanımlayın:
//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/render-options-custom-size.py
from ironpdf import *
renderer = ChromePdfRenderer()
# Set a custom paper size (in millimetres)
renderer.RenderingOptions.PaperSize = PdfPaperSize.Custom
renderer.RenderingOptions.CustomPaperWidth = 80 # 80 mm receipt roll width
renderer.RenderingOptions.CustomPaperHeight = 200
pdf = renderer.RenderHtmlAsPdf("<h2>Receipt</h2><p>Total: $12.50</p>")
pdf.SaveAs("receipt.pdf")//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/render-options-custom-size.py
from ironpdf import *
renderer = ChromePdfRenderer()
# Set a custom paper size (in millimetres)
renderer.RenderingOptions.PaperSize = PdfPaperSize.Custom
renderer.RenderingOptions.CustomPaperWidth = 80 # 80 mm receipt roll width
renderer.RenderingOptions.CustomPaperHeight = 200
pdf = renderer.RenderHtmlAsPdf("<h2>Receipt</h2><p>Total: $12.50</p>")
pdf.SaveAs("receipt.pdf")JavaScript Çalıştırmayı Etkinleştirme
Varsayılan olarak, IronPDF render sırasında JavaScript çalıştırır. Bir sayfa, görünen içeriği üretmek için JavaScript'e güveniyorsa — grafikler, veri tabloları, dinamik form değerleri — bu davranış, işlenen PDF'nin son DOM durumunu yansıtması anlamına gelir. JavaScript'in gereksiz olduğu sayfalar için JavaScript'i devre dışı bırakın:
//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/render-options-javascript.py
from ironpdf import *
renderer = ChromePdfRenderer()
# Disable JavaScript for static HTML pages
renderer.RenderingOptions.EnableJavaScript = False
pdf = renderer.RenderHtmlAsPdf("<p>Static content only.</p>")
pdf.SaveAs("static.pdf")//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/render-options-javascript.py
from ironpdf import *
renderer = ChromePdfRenderer()
# Disable JavaScript for static HTML pages
renderer.RenderingOptions.EnableJavaScript = False
pdf = renderer.RenderHtmlAsPdf("<p>Static content only.</p>")
pdf.SaveAs("static.pdf")JavaScript'i devre dışı bırakmak, basit, statik HTML belgeleri için render süresini azaltır.
Daha fazla render yapılandırma detayı için bkz. PDF üretim ayarları ve özel kağıt boyutu örneği.
Özel Üstbilgiler ve Altbilgiler Nasıl Eklersiniz?
IronPDF'deki üstbilgiler ve altbilgiler, renderer'ın RenderingOptions öğesine eklenmiş HtmlHeaderFooter veya TextHeaderFooter nesneleri aracılığıyla uygulanır. HtmlHeaderFooter size tam HTML ve CSS kontrolü sağlar — logolu markalı antetli kağıtlar için idealdir. TextHeaderFooter daha basittir ve dinamik sayfa numaraları dahil olmak üzere metin tabanlı gereksinimlerin çoğunu karşılar.
Metin Tabanlı Üstbilgi ve Altbilgi
//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/headers-footers-text.py
from ironpdf import *
renderer = ChromePdfRenderer()
# Add a text header with the document title
renderer.RenderingOptions.TextHeader = TextHeaderFooter()
renderer.RenderingOptions.TextHeader.CenterText = "Quarterly Report — Q1 2024"
renderer.RenderingOptions.TextHeader.DrawDividerLine = True
renderer.RenderingOptions.TextHeader.FontSize = 10
# Add a footer with page numbers
renderer.RenderingOptions.TextFooter = TextHeaderFooter()
renderer.RenderingOptions.TextFooter.RightText = "Page {page} of {total-pages}"
renderer.RenderingOptions.TextFooter.FontSize = 9
renderer.RenderingOptions.TextFooter.DrawDividerLine = True
html = "<h1>Executive Summary</h1><p>Revenue increased 12% year-over-year.</p>"
pdf = renderer.RenderHtmlAsPdf(html)
pdf.SaveAs("report-with-footer.pdf")//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/headers-footers-text.py
from ironpdf import *
renderer = ChromePdfRenderer()
# Add a text header with the document title
renderer.RenderingOptions.TextHeader = TextHeaderFooter()
renderer.RenderingOptions.TextHeader.CenterText = "Quarterly Report — Q1 2024"
renderer.RenderingOptions.TextHeader.DrawDividerLine = True
renderer.RenderingOptions.TextHeader.FontSize = 10
# Add a footer with page numbers
renderer.RenderingOptions.TextFooter = TextHeaderFooter()
renderer.RenderingOptions.TextFooter.RightText = "Page {page} of {total-pages}"
renderer.RenderingOptions.TextFooter.FontSize = 9
renderer.RenderingOptions.TextFooter.DrawDividerLine = True
html = "<h1>Executive Summary</h1><p>Revenue increased 12% year-over-year.</p>"
pdf = renderer.RenderHtmlAsPdf(html)
pdf.SaveAs("report-with-footer.pdf"){page} ve {total-pages} yer tutucuları, görüntüleme sırasında doğru değerlerle değiştirilir. Kullanılabilir diğer yer tutucular arasında {date}, {time} ve {url} bulunur.
Logolu HTML Tabanlı Üstbilgi
Markalı bir başlık (şirket logosu, renkli şerit veya biçimlendirilmiş adres bloğu) gerektiğinde, bunun yerine HtmlHeaderFooter kullanın:
//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/headers-footers-html.py
from ironpdf import *
renderer = ChromePdfRenderer()
header_html = """
<div style="font-family: Arial, sans-serif; border-bottom: 2px solid #003366; padding: 8px 0;">
<img src='assets/logo.png' style='height: 40px; float: left;' alt='Company logo'>
<span style='float: right; font-size: 11px; color: #666;'>Confidential</span>
<div style='clear:both;'></div>
</div>
"""
renderer.RenderingOptions.HtmlHeader = HtmlHeaderFooter()
renderer.RenderingOptions.HtmlHeader.HtmlFragment = header_html
renderer.RenderingOptions.HtmlHeader.BaseUrl = "./"
html_body = "<h1>Project Status Update</h1><p>All milestones on track.</p>"
pdf = renderer.RenderHtmlAsPdf(html_body, "./")
pdf.SaveAs("branded-report.pdf")//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/headers-footers-html.py
from ironpdf import *
renderer = ChromePdfRenderer()
header_html = """
<div style="font-family: Arial, sans-serif; border-bottom: 2px solid #003366; padding: 8px 0;">
<img src='assets/logo.png' style='height: 40px; float: left;' alt='Company logo'>
<span style='float: right; font-size: 11px; color: #666;'>Confidential</span>
<div style='clear:both;'></div>
</div>
"""
renderer.RenderingOptions.HtmlHeader = HtmlHeaderFooter()
renderer.RenderingOptions.HtmlHeader.HtmlFragment = header_html
renderer.RenderingOptions.HtmlHeader.BaseUrl = "./"
html_body = "<h1>Project Status Update</h1><p>All milestones on track.</p>"
pdf = renderer.RenderHtmlAsPdf(html_body, "./")
pdf.SaveAs("branded-report.pdf")BaseUrl'yi HtmlHeaderFooter'de belge gövdesi için kullanılan aynı temel yola ayarlayın. Bu, üstbilgi HTML'sinde başvurulan resimlerin ve stil sayfalarının doğru bir şekilde çözülmesini sağlar.Üstbilgi ve altbilgi, oluşturulan PDF'nin her sayfasında, çok sayfalı belgeler dahil olmak üzere görünür. Altbilgide sayfa düzeyinde meta verileri içeren çalışan bir örnek için bkz. HTML üstbilgileri ve altbilgileri kod örneği.
Üstbilgi ve Altbilgi için Kenar Boşluku Ayarlamaları
Bir üstbilgi veya altbilgi eklerken, içeriğin sayfa gövdesiyle örtüşmemesi için ilgili kenar boşluğunu artırın:
//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/headers-footers-margins.py
from ironpdf import *
renderer = ChromePdfRenderer()
renderer.RenderingOptions.MarginTop = 30 # Make room for header
renderer.RenderingOptions.MarginBottom = 20 # Make room for footer
renderer.RenderingOptions.TextHeader = TextHeaderFooter()
renderer.RenderingOptions.TextHeader.CenterText = "Internal Use Only"
renderer.RenderingOptions.TextFooter = TextHeaderFooter()
renderer.RenderingOptions.TextFooter.CenterText = "Page {page} of {total-pages}"
pdf = renderer.RenderHtmlAsPdf("<h1>Internal Document</h1><p>Body content.</p>")
pdf.SaveAs("margined-report.pdf")//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/headers-footers-margins.py
from ironpdf import *
renderer = ChromePdfRenderer()
renderer.RenderingOptions.MarginTop = 30 # Make room for header
renderer.RenderingOptions.MarginBottom = 20 # Make room for footer
renderer.RenderingOptions.TextHeader = TextHeaderFooter()
renderer.RenderingOptions.TextHeader.CenterText = "Internal Use Only"
renderer.RenderingOptions.TextFooter = TextHeaderFooter()
renderer.RenderingOptions.TextFooter.CenterText = "Page {page} of {total-pages}"
pdf = renderer.RenderHtmlAsPdf("<h1>Internal Document</h1><p>Body content.</p>")
pdf.SaveAs("margined-report.pdf")Düzenin önemli olduğu belgelerde, çıktının PRINT özelliklerine tam olarak uyması için kenar boşluğu ayarlamalarını PaperSize ayarlarıyla birleştirin. IronSoftwareSystemDrawingColor arka plan dolguları ve CSS @page kuralları gibi ek mizanpaj denetimleri, özel kenar boşlukları örneğinde ayrıntılı olarak açıklanmaktadır.
Bir Sonraki Adımlar Nelerdir?
Bu eğitici yazı, HTML'den PDF'ye üç temel dönüşüm yöntemini ve çıktısını kontrol eden render seçeneklerini kapsadı. Aşağıdaki kılavuzlar bu temeli genişletir ve daha özel görevleri kapsar:
- PDF Oluşturma Ayarları —
ChromePdfRenderOptions'ye derinlemesine bakış: DPI, arka plan işleme, CSS medya türü, JavaScript bekleme stratejileri ve PRINT ile ekran modu. HTML Üstbilgileri ve Altbilgileri — Logolar, sayfa numaraları, tarihler ve çok kolumlu düzenlerle markalı üstbilgi ve altbilgi şablonları. Özel Kenar Boşlukları ve Kağıt Boyutu — Baskı için hazır çıktı ve standart dışı formatlar için sayfa geometrisini ince ayarlayın. PDF'lere Filigran Ekle — Mevcut veya yeni oluşturulan PDF'lere metin veya resim filigranları ekleyin. PDF'lerden Metin Çıkar — Programatik olarak oluşturulan veya mevcut PDF'lerden metin içeriğini okuyun.
30 günlük ücretsiz denemeyi başlatın ve değerlendirme sırasında sınırsız ve filigransız PDF'ler oluşturun. Üretime hazır olduğunuzda, takımlar ve kurumsal dağıtımlar için lisans seçeneklerini inceleyin.
Sıkça Sorulan Sorular
Python'da bir HTML dizisini PDF'ye nasıl dönüştürebilirim?
Bir ChromePdfRenderer örneği oluşturun, ardından renderer.RenderHtmlAsPdf(html_string) çağrısını yapın. Yöntem, satır içi CSS ve JavaScript dahil olmak üzere herhangi bir geçerli HTML'yi kabul eder. Döndürülen PdfDocument'i pdf.SaveAs('output.pdf') ile kaydedin.
Python için IronPDF nasıl kurulur?
pip install ironpdf komutunu bir terminalden çalıştırın. IronPDF for Python, .NET 6.0 SDK veya daha yenisini gerektirir, bu ilk kullandıktan önce ayrı olarak yüklenmelidir.
IronPDF, canlı bir URL'yi Python'da PDF'ye dönüştürebilir mi?
Evet. renderer.RenderUrlAsPdf("https://example.com") kullanın. IronPDF, sayfayı Chromium motorunu kullanarak alır, JavaScript'in çalışmasını tamamlamasını bekler ve ardından tam işlenmiş DOM'dan PDF'yi üretir.
Bir yerel HTML dosyasını PDF'ye nasıl dönüştürebilirim?
renderer.RenderHtmlFileAsPdf("path/to/file.html") çağrısını yapın. IronPDF, CSS dosyaları, resimler ve betikler gibi tüm göreli varlık yollarını HTML dosyasının dizinine göre otomatik olarak çözer.
IronPDF tarafından üretilen PDF'lerden filigranı nasıl kaldırırım?
Geçerli bir lisans anahtarı ile License.LicenseKey = 'SİZİN-ANAHTARINIZ' ayarını gerçekleştirin. Bir anahtar olmadan, IronPDF geliştirme için uygun, ancak üretim kullanımı için uygun olmayan döşenmiş bir filigran ekler.
IronPDF, Python için hangi render seçeneklerini sunar?
renderer.RenderingOptions üzerindeki özellikler, kağıt boyutunu (PaperSize), yönlendirmeyi (PaperOrientation), kenar boşluklarını (MarginTop, MarginLeft, vs.), özel boyutları (CustomPaperWidth, CustomPaperHeight), JavaScript çalıştırmayı (EnableJavaScript) ve daha fazlasını kontrol eder.
Python'da IronPDF ile bir PDF'ye sayfa numaralarını nasıl ekleyebilirim?
renderer.RenderingOptions.TextFooter'a bir TextHeaderFooter atayın ve {page} veya {total-pages} yer tutucuyu RightText veya CenterText gibi metin özelliklerinden birine dahil edin.
Her sayfaya marka logosu olan bir üstbilgi ekleyebilir miyim?
Evet. Bir etiketi içeren bir HTML parçası ile HtmlHeaderFooter kullanın. renderer.RenderingOptions.HtmlHeader'a atayın ve görüntü yolunun doğru çözülmesi için BaseUrl'yi ayarlayın.
IronPDF, Python'da özel kağıt boyutlarını destekliyor mu?
Evet. renderer.RenderingOptions.PaperSize plastik DepaperSize.Custom olarak ayarlayın ve ardından milimetre cinsinden herhangi bir keyfi sayfa boyutunu tanımlamak için CustomPaperWidth ve CustomPaperHeight değerlerini atayın.
IronPDF for Python hangi .NET sürümünü gerektirir?
IronPDF for Python, .NET 6.0 SDK veya daha üstü bir sürüm gerektirir. SDK, Microsoft .NET indirme sayfasında ücretsiz olarak mevcuttur ve IronPDF'i yüklemeden önce kurulmalıdır.










