JAVA için IronPDF kullanarak HTML'yi PDF'ye Nasıl Dönüştürürsünüz

Java ile HTML'den PDF'e

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

IronPDF for Java, HTML içeriğini, modern tarayıcıları çalıştıran aynı motor olan tam bir Chromium işleme motoru kullanarak PDF belgelerine dönüştürür. Her CSS özelliği, yazı tipi, resim ve JavaScript tarafından oluşturulan yerleşim, tarayıcı penceresinde olduğu gibi doğru bir şekilde işlenir, sonra piksel doğruğu bir PDF olarak sayfaya yerleştirilir.

Bu eğitim, üç temel dönüştürme yöntemini anlatır: HTML dizesinden PDF'ye, canlı URL'den PDF'ye ve yerel HTML dosyasından PDF'ye. Ayrıca kurulum, lisans yapılandırması ve geliştiricilerin sıklıkla başvurabileceği işleme seçeneklerini de kapsar.

Java kütüphanesi, IronPDF for .NET API şeklinin aynısını yansıtıyor, bu yüzden her iki çalışma zamanı ile çalışan ekipler geçişi sorunsuz bulacak. Bu eğitimin tüm örneklerinin kaynak kodu GitHub'da mevcuttur.

Hızlı Başlangıç: Java'da HTML'yi PDF'ye Dönüştürün

IronPDF'yi Maven pom.xml'nize ekleyin, ardından tek bir yöntem çağırarak bir PDF oluşturun:

//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/quickstart.java
import com.ironsoftware.ironpdf.*;

// Set your license key before any rendering calls
License.setLicenseKey("YOUR-LICENSE-KEY");

// Convert an HTML string to a PDF and save it
PdfDocument pdf = PdfDocument.renderHtmlAsPdf("<h1>Hello from IronPDF for Java!</h1>");
pdf.saveAs("output.pdf");
//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/quickstart.java
import com.ironsoftware.ironpdf.*;

// Set your license key before any rendering calls
License.setLicenseKey("YOUR-LICENSE-KEY");

// Convert an HTML string to a PDF and save it
PdfDocument pdf = PdfDocument.renderHtmlAsPdf("<h1>Hello from IronPDF for Java!</h1>");
pdf.saveAs("output.pdf");
JAVA

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

İlk Adım:
green arrow pointer

İçindekiler


IronPDF Java için'yı Yükleme

IronPDF for Java, Maven Central üzerinden ve bağımsız bir JAR olarak gönderilir. Maven yolu, çoğu proje için önerilir çünkü geçişli bağımlılıkları yönetir ve kütüphane sürümlerini geliştirici makineleri ve CI hatları arasında tutarlı tutar.

Seçenek 1: IronPDF'i Maven Bağımlılığı Olarak Ekleyin

Projenin pom.xml dosyasını açın ve <dependencies> bloğuna aşağıdaki girdileri ekleyin:

//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/maven-dependency.xml
<dependencies>

    <dependency>
        <groupId>com.ironsoftware</groupId>
        <artifactId>ironpdf</artifactId>
        <version>[LATEST_VERSION]</version>
    </dependency>

    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-simple</artifactId>
        <version>[LATEST_VERSION]</version>
    </dependency>
</dependencies>
//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/maven-dependency.xml
<dependencies>

    <dependency>
        <groupId>com.ironsoftware</groupId>
        <artifactId>ironpdf</artifactId>
        <version>[LATEST_VERSION]</version>
    </dependency>

    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-simple</artifactId>
        <version>[LATEST_VERSION]</version>
    </dependency>
</dependencies>
XML

İlk eser, IronPDF for Java'nın en son sürümünü getirir. İkinci eser, IronPDF'in işleme motorunun çalıştırma sırasında tanı mesajlarını yazabilmesi için SLF4J kaydı etkinleştirir. Logback veya Log4J'i tercih eden geliştiriciler, bu sağlayıcıyı yerine kullanabilirler. Kayıt bağımlılığı isteğe bağlıdır — günlük gerekliyse, görmezden gelebilirsiniz.

Dosyayı kaydettikten sonra, her iki kütüphaneyi de indirmek için projenin kök dizininden mvn install komutunu çalıştırın. Maven, IronPDF'in gerektirdiği herhangi bir geçiş bağımlılıkları dahil, tam bağımlılık grafiğini otomatik olarak çözer.

Gradle projeleri için, build.gradle içindeki eşdeğer bağımlılık beyanı şöyledir:

//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/gradle-dependency.java
// build.gradle (Groovy DSL)
// dependencies {
//     implementation 'com.ironsoftware:ironpdf:[LATEST_VERSION]'
//     implementation 'org.slf4j:slf4j-simple:[LATEST_VERSION]'
// }
//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/gradle-dependency.java
// build.gradle (Groovy DSL)
// dependencies {
//     implementation 'com.ironsoftware:ironpdf:[LATEST_VERSION]'
//     implementation 'org.slf4j:slf4j-simple:[LATEST_VERSION]'
// }
JAVA

[LATEST_VERSION] ifadesini, IronPDF değişiklik günlüğündeki veya Maven Central sayfasındaki sürüm numarasıyla değiştirin.

Seçenek 2: JAR Dosyasını Elle Ekleyin

IronPDF JAR dosyasını Maven Central'dan doğrudan indirin ve projenizin classpath'ine ekleyin. Bu yaklaşım, bir yapı aracı olmadan çalışır, ancak manuel sürüm yönetimi gerektirir, bu yüzden en iyi şekilde Maven veya Gradle kullanmayan eski projeler veya dış ağ erişiminin kısıtlandığı ortamlara uygundur.

İndirildikten sonra, projedeki classpath'e JAR dosyasını IDE'nin proje ayarları üzerinden ekleyin. IntelliJ IDEA'da, proje kök dizinine sağ tıklayın, "Open Module Settings" seçeneğini, "Dependencies"'e gidin ve JAR dosyasını ekleyin. Eclipse'de proje üzerine sağ tıklayın, "Properties > Java Build Path > Libraries"'e gidin, ardından "Add External JARs"'e tıklayın.

{i:(IronPDF JAR, paketlenmiş bir Chromium motoru binary'si içerir. Yeni bir makinede ilk işleme çağrısı, geçici bir dizine çıkaracaktır, bu birkaç saniye sürer. Sonraki çağrılar önbelleğe alınmış binary'yi kullanır ve hızla başlar. Kapsayıcı ortamlarında, her kapsayıcı başlatılışında yeniden çıkarımlarını önlemek için çıkarım yoluna kalıcı bir hacim monte edin.)}]

Sistem Gereksinimleri

IronPDF for Java, JDK 8 veya daha üstü üzerinde çalışır. Windows, Linux ve macOS'u x86-64 ve ARM64 mimarilerinde destekler. Harici bir tarayıcı yüklemesi gerektirmez, çünkü Chromium binary'si JAR ile paketlenmiştir. Linux'ta, Chromium'un beklediği standart paylaşımlı kütüphanelerin mevcut olduğundan emin olun. IronPDF for Java belgeleri, yaygın Linux dağıtımları için minimum gerekli paketlerin bir listesini içerir.


IronPDF'i Nasıl İçe Aktarırım ve Lisans Anahtarını Nasıl Yapılandırırım?

Tüm IronPDF sınıfları com.ironsoftware.ironpdf paketinde bulunur. Herhangi bir kaynak dosyasının en üstünde, PDF belgeleri oluşturacak veya düzenleyecek olacak şekilde içe aktarın.

//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/import-and-license.java
import com.ironsoftware.ironpdf.*;
import java.nio.file.Paths;

// Apply your license key before any other IronPDF calls
License.setLicenseKey("YOUR-LICENSE-KEY");

// Optional: set a custom log file path
Settings.setLogPath(Paths.get("IronPdfEngine.log"));
//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/import-and-license.java
import com.ironsoftware.ironpdf.*;
import java.nio.file.Paths;

// Apply your license key before any other IronPDF calls
License.setLicenseKey("YOUR-LICENSE-KEY");

// Optional: set a custom log file path
Settings.setLogPath(Paths.get("IronPdfEngine.log"));
JAVA

Bir lisans anahtarı olmadan, IronPDF deneme modunda çalışır ve her PDF sayfasını karo şeklinde filigranlarla damgalar. Anahtarı ayarlamak filigranı kaldırır ve tüm özellikleri etkinleştirir. Bir denemeyi ücretsiz başlatın ve hemen bir anahtar edinin.

Renderlenmiş bir PDF sayfasına damgalanmış IronPDF deneme modu filigranı

Lisans anahtarı, bir deneme veya ticari lisans etkinleştirildiğinde Iron Software tarafından verilen bir dizgedir. Bunu kaynak kodunda sabitlemek yerine bir ortam değişkenine veya bir yapılandırma dosyasına kaydedin. Yaygın bir model, başlatma sırasında bunu bir ortam değişkeninden okumaktır:

//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/license-from-env.java
import com.ironsoftware.ironpdf.*;

// Read the license key from an environment variable
String licenseKey = System.getenv("IRONPDF_LICENSE_KEY");
if (licenseKey != null && !licenseKey.isEmpty()) {
    License.setLicenseKey(licenseKey);
}
//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/license-from-env.java
import com.ironsoftware.ironpdf.*;

// Read the license key from an environment variable
String licenseKey = System.getenv("IRONPDF_LICENSE_KEY");
if (licenseKey != null && !licenseKey.isEmpty()) {
    License.setLicenseKey(licenseKey);
}
JAVA

Bu yaklaşım, anahtarı sürüm kontrolünden uzak tutar ve geliştirme, hazırlık ve üretim ortamlarında farklı anahtarlar kullanmayı kolaylaştırır.

ÖnemliLicense.setLicenseKey ve Settings.setLogPath, herhangi bir görüntüleme veya işleme yönteminden önce çağrılmalıdır. Bunları uygulama başlangıcında yerleştirin — ideal olarak statik bir başlatıcı bloğunda veya bir main giriş noktasında.


HTML Dizgesini PDF'ye Nasıl Dönüştürürüm?

PdfDocument.renderHtmlAsPdf bir HTML işaretleme dizesi kabul eder ve diske yazılmadan önce kaydedilebilen, birleştirilebilen veya değiştirilebilen bir PdfDocument nesnesi döndürür. Bu, programlı olarak oluşturulan HTML için birincil yöntemdir - örneğin, Java dizgesi olarak tanımlanan veya bir dosyadan yüklenen bir HTML şablonu ile veritabanı değerlerini birleştirerek oluşturulan raporlar.

//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/html-string-to-pdf.java
import com.ironsoftware.ironpdf.*;

// Simple one-liner: convert an HTML string to a PDF
PdfDocument pdf = PdfDocument.renderHtmlAsPdf("<h1>Hello from IronPDF!</h1>");
pdf.saveAs("htmlstring_to_pdf.pdf");
//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/html-string-to-pdf.java
import com.ironsoftware.ironpdf.*;

// Simple one-liner: convert an HTML string to a PDF
PdfDocument pdf = PdfDocument.renderHtmlAsPdf("<h1>Hello from IronPDF!</h1>");
pdf.saveAs("htmlstring_to_pdf.pdf");
JAVA

İşleme motoru, göreli varlık yollarını (resimler, stil dosyaları, betikler) isteğe bağlı ikinci argüman - temel yoluna karşı çözer. Bir temel yol sağlandığında, motor, göreli URL'lerin çözüleceği kök yol olarak bunu değerlendirir. Bu, yerel CSS ve resim dosyalarını referans alan HTML'nin, kaynak işaretlemede herhangi bir yol manipülasyonu olmaksızın doğru bir şekilde işlenmesini sağlar.

//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/html-string-with-assets.java
import com.ironsoftware.ironpdf.*;

// HTML references assets in a local "assets" subfolder
String html = "<html>" +
    "<head><link rel='stylesheet' href='assets/style.css'></head>" +
    "<body><h1>Invoice</h1><img src='assets/logo.png' /></body>" +
    "</html>";

// Pass the base path so IronPDF resolves relative asset URLs
PdfDocument pdf = PdfDocument.renderHtmlAsPdf(html, "C:/my-project/templates");
pdf.saveAs("invoice.pdf");
//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/html-string-with-assets.java
import com.ironsoftware.ironpdf.*;

// HTML references assets in a local "assets" subfolder
String html = "<html>" +
    "<head><link rel='stylesheet' href='assets/style.css'></head>" +
    "<body><h1>Invoice</h1><img src='assets/logo.png' /></body>" +
    "</html>";

// Pass the base path so IronPDF resolves relative asset URLs
PdfDocument pdf = PdfDocument.renderHtmlAsPdf(html, "C:/my-project/templates");
pdf.saveAs("invoice.pdf");
JAVA

saveAs yöntemi, mutlak veya göreli bir yol kabul eder. Eğer dosya mevcut değilse oluşturulur ve mevcutsa üzerine yazılır. Uygulamanın henüz oluşturmamış olabileceği bir dizine yazarken, saveAs komutunu çağırmadan önce Files.createDirectories(Paths.get("output")) komutunu kullanarak dizini oluşturun.

IronPDF, Chromium tarafından uygulanan tam HTML5 ve CSS3 özellik setini destekler. CSS'de @font-face aracılığıyla yüklenen özel yazı tipleri, yazı tipi dosyalarına temel yoldan erişilebildiğinde doğru şekilde görüntülenir. JavaScript tarafından işlenen SVG öğeleri ve <canvas> öğeleri de PDF çıktısında görünür.

İpuçlarıHTML şablonlarını özel bir dizinde tutun ve bu dizini temel yol olarak iletin. Bu model, tasarımcıların herhangi bir Java koduna dokunmadan şablonu güncellemelerine olanak tanır.


URL'yi Java'da PDF'ye Nasıl Dönüştürürüm?

PdfDocument.renderUrlAsPdf, belirtilen URL'deki sayfayı alır, JavaScript'in çalışmasını ve dinamik içeriğin yüklenmesini bekler, ardından tamamen işlenmiş DOM'u bir PDF'ye dönüştürür.

//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/url-to-pdf.java
import com.ironsoftware.ironpdf.*;

// Convert a live web page to PDF
PdfDocument pdf = PdfDocument.renderUrlAsPdf("https://en.wikipedia.org/wiki/PDF");
pdf.saveAs("wikipedia_pdf_article.pdf");
//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/url-to-pdf.java
import com.ironsoftware.ironpdf.*;

// Convert a live web page to PDF
PdfDocument pdf = PdfDocument.renderUrlAsPdf("https://en.wikipedia.org/wiki/PDF");
pdf.saveAs("wikipedia_pdf_article.pdf");
JAVA

Motor kimlik doğrulama başlıklarını, çerezleri ve JavaScript ağırlıklı tek sayfa uygulamalarını yönetir. Giriş veya özel istek başlıkları gerektiren sayfalar için, ChromePdfRenderOptions sınıfını kullanarak renderUrlAsPdf çağrısından önce istek parametrelerini yapılandırın.

Bu dönüştürme yöntemi, web sayfalarını arşivlemek, uyumluluk anlık görüntüleri oluşturmak ve iç panellerden müşteriye yönelik raporlar üretmek için kullanışlıdır. Yerel ağ üzerinden erişilen sunucu tarafından oluşturulan sayfalar tam olarak desteklenir — http://localhost:8080/report/123 öğesini genel bir URL ile aynı şekilde geçirin. IronPDF, sayfanın tam olarak yüklenmesini bekler, böylece asenkron veri alımına dayanan paneller, boş grafiklerle değil, verileri doldurulmuş olarak görüntülenir.

HTTP temel kimlik doğrulaması gerektiren sayfalar için, kimlik bilgilerini http://user:password@host/path biçiminde URL'ye ekleyin. Oturum çerezleriyle korunan sayfalar için, ChromePdfRenderOptions nesnesini renderUrlAsPdf nesnesine aktarmadan önce çerez kavanozunu yapılandırın. Kimlik doğrulamalı URL'ler için istek başlıklarını yapılandırma ve çerezleri yönetme hakkında ayrıntılar için IronPDF for Java documentation başvurusuna bakın.


Yerel HTML Dosyasını PDF'e Nasıl Dönüştürebilirim?

PdfDocument.renderHtmlFileAsPdf, yerel dosya sisteminden bir HTML dosyasını okur ve PDF olarak görüntüler. Dosyada bağlanılan tüm varlıklar (CSS, JavaScript, resimler) göreli yollarla referans verilirse, HTML dosyasının kendi dizinine göre çözülür.

//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/html-file-to-pdf.java
import com.ironsoftware.ironpdf.*;

// Convert a local HTML file — assets resolve relative to its directory
PdfDocument pdf = PdfDocument.renderHtmlFileAsPdf("C:/invoices/TestInvoice1.html");
pdf.saveAs("htmlfile_to_pdf.pdf");
//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/html-file-to-pdf.java
import com.ironsoftware.ironpdf.*;

// Convert a local HTML file — assets resolve relative to its directory
PdfDocument pdf = PdfDocument.renderHtmlFileAsPdf("C:/invoices/TestInvoice1.html");
pdf.saveAs("htmlfile_to_pdf.pdf");
JAVA

Bu yaklaşım karmaşık HTML belgelerini dönüştürmek için en doğru olandır. Çünkü işleme motoru, bellek içi bir dizgi yerine dosya sistemi yolunda çalışır, çok katmanlı varlık dizinlerine yapılan göreli referanslar, ek bir yapılandırma gerektirmeden çözülür. Aynı klasördeki style.css ve script.js öğelerine dayanan bir şablon, herhangi bir yol ayarlaması yapılmadan doğru şekilde görüntülenir.

Bu yöntem fatura oluşturma, sözleşme üretme ve bir tasarımcının HTML şablonunu Java uygulamasından bağımsız olarak sürdüğü herhangi bir iş akışı için özellikle uygundur. Geliştirme ekibi şablonu bir veri dosyası olarak ele alır, uygulamayla birlikte depolar ve renderHtmlFileAsPdf'yi yol bilgisiyle çağırır. Tasarımcı marka değiştirme veya düzen değiştirmek için şablonu güncellediğinde, Java kodunda değişiklik gerekmez.

Lütfen dikkate alınIronPDF, Chromium'un desteklediği tüm modern HTML ve CSS özelliklerini destekler - Flexbox, CSS Grid, CSS değişkenleri, Web yazı tipleri ve medya sorguları çıktı PDF'de doğru bir şekilde işlenir.


PDF Üretim Seçeneklerini Nasıl Ayarlayabilirim?

ChromePdfRenderOptions, kağıt boyutu, kenar boşlukları, Zoom düzeyi, baskı ortamı türü, JavaScript zaman aşımı ve daha fazlası gibi görüntüleme davranışını kontrol eder. Bir örnek oluşturun, istenen özellikleri yapılandırın ve bunu herhangi bir render*AsPdf yöntemine ikinci argüman olarak aktarın.

//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/render-options.java
import com.ironsoftware.ironpdf.*;
import com.ironsoftware.ironpdf.render.*;

ChromePdfRenderOptions options = new ChromePdfRenderOptions();

// Render the page using the print media type (uses @media print CSS rules)
options.setCssMediaType(CssMediaType.PRINT);

// Wait up to 5 seconds for JavaScript to finish executing
options.setJavaScriptTimeout(5000);

// Apply a 1.5x zoom level to scale content to fit the page
options.setZoom(150);

// Render at 150 DPI for sharper images in print output
options.setDpi(150);

PdfDocument pdf = PdfDocument.renderHtmlAsPdf(
    "<h1>Styled Report</h1>",
    options
);
pdf.saveAs("styled_report.pdf");
//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/render-options.java
import com.ironsoftware.ironpdf.*;
import com.ironsoftware.ironpdf.render.*;

ChromePdfRenderOptions options = new ChromePdfRenderOptions();

// Render the page using the print media type (uses @media print CSS rules)
options.setCssMediaType(CssMediaType.PRINT);

// Wait up to 5 seconds for JavaScript to finish executing
options.setJavaScriptTimeout(5000);

// Apply a 1.5x zoom level to scale content to fit the page
options.setZoom(150);

// Render at 150 DPI for sharper images in print output
options.setDpi(150);

PdfDocument pdf = PdfDocument.renderHtmlAsPdf(
    "<h1>Styled Report</h1>",
    options
);
pdf.saveAs("styled_report.pdf");
JAVA

CssMediaType.PRINT ayarı, motorun @media print CSS kurallarını uygulamasını söyler; bu kurallar, birçok HTML şablonunda gezinme çubuklarını gizlemek ve PRINT'e özgü düzenleri uygulamak için kullanılır. setJavaScriptTimeout yöntemi, JavaScript grafik kütüphaneleri (D3.js, Chart.js) veya gecikmeli yükleme içeriği kullanan sayfalar için önemlidir — zaman aşımı süresi çok kısaysa, PDF, JavaScript'in işlemeyi tamamlamadan sayfayı yakalayacak ve boş grafikler veya eksik bölümler ortaya çıkacaktır. Beklenen içerik olmadığında render edilmiş PDF, zaman aşımını artırın.

setDpi yöntemi, çıktıda görüntü çözünürlüğünü kontrol eder. Varsayılan (96 DPI) ekran belgeleri için uygundur. Baskıya verilecek veya yüksek DPI ekranlarda gösterilecek PDF'ler için 150 veya 300 DPI kullanın. Daha yüksek DPI değerleri, dosya boyutunu orantılı olarak artırır. Konfigüre edilebilir özelliklerin tam listesi için PDF üretim ayarları kod örneğine bakın.


Başlıklar ve Altbilgileri Nasıl Ekleyebilirim?

IronPDF, hem metin tabanlı hem de HTML tabanlı üstbilgi ve altbilgileri destekler. Metin başlıklarında, görüntüleme sırasında otomatik olarak çözümlenen biçim belirteçleri ({page}, {total-pages}, {date}) içeren bir TextHeaderFooter nesnesi kullanılır.

//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/headers-footers.java
import com.ironsoftware.ironpdf.*;
import com.ironsoftware.ironpdf.headerfooter.*;

// Create a text-based header and footer
TextHeaderFooter header = new TextHeaderFooter();
header.setCenterText("Confidential — {date}");
header.setFontSize(10);

TextHeaderFooter footer = new TextHeaderFooter();
footer.setLeftText("My Company, Inc.");
footer.setRightText("Page {page} of {total-pages}");
footer.setFontSize(9);

PdfDocument pdf = PdfDocument.renderHtmlAsPdf("<h1>Annual Report</h1>");
pdf.addTextHeaders(header);
pdf.addTextFooters(footer);
pdf.saveAs("report_with_headers.pdf");
//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/headers-footers.java
import com.ironsoftware.ironpdf.*;
import com.ironsoftware.ironpdf.headerfooter.*;

// Create a text-based header and footer
TextHeaderFooter header = new TextHeaderFooter();
header.setCenterText("Confidential — {date}");
header.setFontSize(10);

TextHeaderFooter footer = new TextHeaderFooter();
footer.setLeftText("My Company, Inc.");
footer.setRightText("Page {page} of {total-pages}");
footer.setFontSize(9);

PdfDocument pdf = PdfDocument.renderHtmlAsPdf("<h1>Annual Report</h1>");
pdf.addTextHeaders(header);
pdf.addTextFooters(footer);
pdf.saveAs("report_with_headers.pdf");
JAVA

{page} ve {total-pages} belirteçleri, altbilgide "12'nin 3'ü" gibi değerler üretir ve sayfa sayısı değiştikçe otomatik olarak güncellenir, bu nedenle görüntüleme öncesinde nihai sayfa sayısını bilmek gerekmez. {date} belirteci, sistem yerel ayarlarını kullanarak geçerli tarihi ekler. Kullanılabilir diğer belirteçler arasında {time}, {document-title} ve {url} bulunur.

addTextHeaders ve addTextFooters ile eklenen üstbilgiler ve altbilgiler, varsayılan olarak belgedeki her sayfaya uygulanır. Onları belirli sayfalarla sınırlamak için isteğe bağlı sayfa aralığı parametresini iletin - örneğin, kapak sayfasındaki başlığı atlamak için.

Logo, marka renkleri veya özel düzenler gerektiren stilize başlıklar için bunun yerine HtmlHeaderFooter kullanın — bu, tam bir HTML dizesini kabul eder ve sayfa gövdesi ile aynı şekilde görüntüler. Tam HTML başlık deseni için özel başlıklar ve altbilgiler örneğine bakın.


Sayfa Kenar Boşluklarını ve Kağıt Boyutunu Nasıl Ayarlayabilirim?

Herhangi bir render*AsPdf yöntemini çağırmadan önce, kenar boşluğu ve kağıt boyutu değerleri yapılandırılmış bir ChromePdfRenderOptions örneği geçirin.

//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/margins-paper-size.java
import com.ironsoftware.ironpdf.*;
import com.ironsoftware.ironpdf.render.*;
import com.ironsoftware.ironpdf.page.*;

ChromePdfRenderOptions options = new ChromePdfRenderOptions();

// Set uniform margins in millimeters
options.setMarginTop(20);
options.setMarginBottom(20);
options.setMarginLeft(15);
options.setMarginRight(15);

// Use A4 paper (default is Letter)
options.setPaperSize(PaperSize.A4);

PdfDocument pdf = PdfDocument.renderHtmlAsPdf("<p>Page content here.</p>", options);
pdf.saveAs("a4_with_margins.pdf");
//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/margins-paper-size.java
import com.ironsoftware.ironpdf.*;
import com.ironsoftware.ironpdf.render.*;
import com.ironsoftware.ironpdf.page.*;

ChromePdfRenderOptions options = new ChromePdfRenderOptions();

// Set uniform margins in millimeters
options.setMarginTop(20);
options.setMarginBottom(20);
options.setMarginLeft(15);
options.setMarginRight(15);

// Use A4 paper (default is Letter)
options.setPaperSize(PaperSize.A4);

PdfDocument pdf = PdfDocument.renderHtmlAsPdf("<p>Page content here.</p>", options);
pdf.saveAs("a4_with_margins.pdf");
JAVA

Eşik değerleri milimetre olarak verilir. PaperSize enum, standart boyutları (A4, Letter, Legal, A3 ve diğerleri) kapsar. Standart olmayan boyutlara ihtiyaç duyan geliştiriciler, options.setCustomPaperWidth ve options.setCustomPaperHeight kullanarak özel bir genişlik ve yükseklik ayarlayabilir. Tam yapılandırma kalıplarını gösteren özel kağıt boyutu örneği ve özel kenar boşlukları örneği bakın.


Bir PDF'e Filigran Nasıl Uygularım?

IronPDF'deki bir filigran, yapılandırılabilir opaklıkta her sayfanın üzerine damga olarak basılmış HTML'dir. Bu yaklaşım, geliştiricilere filigranın görünümü üzerinde tam kontrol sağlar - herhangi bir HTML öğesi, resim veya stilize metin damga olarak kullanılabilir.

//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/watermark.java
import com.ironsoftware.ironpdf.*;

PdfDocument pdf = PdfDocument.renderHtmlAsPdf("<h1>Confidential Report</h1><p>Internal use only.</p>");

// Define the watermark using an HTML string
String watermarkHtml = "<h1 style='color:rgba(200,0,0,0.3); transform:rotate(-45deg);'>DRAFT</h1>";

// Stamp the watermark on all pages at 50% opacity
pdf.applyStamp(watermarkHtml);

pdf.saveAs("draft_watermark.pdf");
//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/watermark.java
import com.ironsoftware.ironpdf.*;

PdfDocument pdf = PdfDocument.renderHtmlAsPdf("<h1>Confidential Report</h1><p>Internal use only.</p>");

// Define the watermark using an HTML string
String watermarkHtml = "<h1 style='color:rgba(200,0,0,0.3); transform:rotate(-45deg);'>DRAFT</h1>";

// Stamp the watermark on all pages at 50% opacity
pdf.applyStamp(watermarkHtml);

pdf.saveAs("draft_watermark.pdf");
JAVA

applyStamp yöntemi, hassas konumlandırma için HtmlStampOptions parametresini kabul eder — ortala, sol üst, özel piksel ofsetleri ve z-indeksi (ön plan veya arka plan). Damgayı bir arka plan olarak ayarlamak, metnin hala okunur kalması için belgelerin arkasına yerleştirir. Ön plan olarak ayarlamak, yazdırma sırasında gizlemeyi daha zorlaştırır.

İpuçlarıTekrar eden bir döşeme filigranı üretmek — IronPDF'nin deneme modunda uyguladığı türden — HTML damga dizesindeki metin öğelerinden oluşan döndürülmüş bir ızgara işleyin ve tüm sayfayı dolduracak şekilde boyutlandırın.

Arka plan filigranları, döşemeli desenler ve lisans yükseltilerek filigranların kaldırılması için örnekler içeren özel filigran nasıl yapılır rehberine bakın.


Birden Fazla PDF'i Birleştirip Tek PDF Nasıl Oluştururum?

PdfDocument.merge, iki veya daha fazla PdfDocument nesnesini sırayla birleştirir ve tek bir yeni belge döndürür. Bileşen bölümlerinden raporlar oluşturmak, kapak sayfalarını eklemek veya bir grup görevdeki kullanıcıya özel bölümleri birleştirmek için tercih edilen yaklaşımdır.

//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/merge-pdfs.java
import com.ironsoftware.ironpdf.*;
import java.util.Arrays;
import java.util.List;

// Render two separate HTML documents into PDFs
PdfDocument cover    = PdfDocument.renderHtmlAsPdf("<h1>Cover Page</h1>");
PdfDocument body     = PdfDocument.renderHtmlAsPdf("<h1>Report Body</h1><p>Section one...</p>");
PdfDocument appendix = PdfDocument.renderHtmlAsPdf("<h2>Appendix A</h2>");

// Merge all three into a single PDF in the specified order
List<PdfDocument> parts = Arrays.asList(cover, body, appendix);
PdfDocument merged = PdfDocument.merge(parts);
merged.saveAs("full_report.pdf");
//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/merge-pdfs.java
import com.ironsoftware.ironpdf.*;
import java.util.Arrays;
import java.util.List;

// Render two separate HTML documents into PDFs
PdfDocument cover    = PdfDocument.renderHtmlAsPdf("<h1>Cover Page</h1>");
PdfDocument body     = PdfDocument.renderHtmlAsPdf("<h1>Report Body</h1><p>Section one...</p>");
PdfDocument appendix = PdfDocument.renderHtmlAsPdf("<h2>Appendix A</h2>");

// Merge all three into a single PDF in the specified order
List<PdfDocument> parts = Arrays.asList(cover, body, appendix);
PdfDocument merged = PdfDocument.merge(parts);
merged.saveAs("full_report.pdf");
JAVA

Her kaynak belgeden gelen sayfalar, kaynak listesinin belirlediği sırayla birleştirilmiş çıktıda görünür. Birleştirilen belge, hiçbir tekil kaynaktan meta veri devralmaz — birleştirme işleminden sonra, bu alanlar son kullanıcı için önemliyse meta.title ve diğer belge özelliklerini PdfDocument.getPdfMetaData() kullanarak güncelleyin.

merge yöntemi, tam olarak iki PdfDocument örneğini kabul eden iki argümanlı bir aşırı yüklemeye de sahiptir. Birçok belgenin toplu olarak birleştirilmesi için, liste aşırı yüklemesini kullanın - bu, tüm kaynakları tek geçişte işlediği için, birden çok iki argüman çağrılarını zincirlemekten daha verimlidir.

Lütfen dikkate alınBirleştirme listesindeki her kaynak PdfDocument, çağrıdan sonra geçerli ve değişmeden kalır. merged örneği, yeni ve bağımsız bir belgedir. Artık ihtiyaç duyulmadığında, ilişkili yerel kaynakları boşaltmak için kaynak belgeleri close() yöntemiyle yayınlayın.


Bir PDF'ten Sayfa Ekleme veya Çıkartma Nasıl Yapılır?

Tek tek sayfalar, PdfDocument.copyPage, PdfDocument.copyPages ve PdfDocument.removePages yöntemleri kullanılarak bir belgeden diğerine kopyalanabilir veya tamamen silinebilir.

//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/page-operations.java
import com.ironsoftware.ironpdf.*;
import java.util.Arrays;

// Generate a multi-page document using CSS page breaks
PdfDocument report = PdfDocument.renderHtmlAsPdf(
    "<p>Page 1 content</p>" +
    "<div style='page-break-after:always;'></div>" +
    "<p>Page 2 content</p>" +
    "<div style='page-break-after:always;'></div>" +
    "<p>Page 3 content</p>"
);

// Remove page 2 (zero-indexed — page index 1)
report.removePages(Arrays.asList(1));

// Save the two-page result
report.saveAs("two_page_report.pdf");
//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/page-operations.java
import com.ironsoftware.ironpdf.*;
import java.util.Arrays;

// Generate a multi-page document using CSS page breaks
PdfDocument report = PdfDocument.renderHtmlAsPdf(
    "<p>Page 1 content</p>" +
    "<div style='page-break-after:always;'></div>" +
    "<p>Page 2 content</p>" +
    "<div style='page-break-after:always;'></div>" +
    "<p>Page 3 content</p>"
);

// Remove page 2 (zero-indexed — page index 1)
report.removePages(Arrays.asList(1));

// Save the two-page result
report.saveAs("two_page_report.pdf");
JAVA

IronPDF'deki sayfa indeksleri sıfır tabanlıdır. Birden fazla sayfayı kaldırırken, her kaldırma işlemi sonraki sayfa indekslerini kaydırdığı için, döngü içinde birden fazla kez çağırmak yerine tüm indeksleri tek bir removePages çağrısında geçirin. Tam listeyi tek defada iletmek indeks sürüklenmesini önler. Örneğin, beş sayfalık bir belgeden 2. ve 4. sayfaları kaldırmak için Arrays.asList(1, 3) komutunu kullanın; iki ayrı çağrı yapmayın.

Harici bir PDF'den sayfalar eklemek için (örneğin, statik bir şablondan yasal bir bildirim eklemek), PdfDocument.insertPdf kullanarak harici belgeyi belirli bir konuma ekleyin. Alan belge sayısı, eklemenin hemen ardından güncellenir.

css page-break-after:always CSS özelliği, PDF olarak görüntülenecek HTML'de sayfa sonlarını zorlamak için kullanılan standart yöntemdir. IronPDF, yeni break-after: page CSS özelliğini de destekler. Her iki yaklaşım, özel bir Java kodu gerektirmeden öngörülebilir sayfa sonları üretir.


Java'da Bir PDF'i Şifreyle Nasıl Korurum?

IronPDF, bir PDF'teki iki farklı şifreyi destekler: düzenleme, yazdırma ve kopyalama izinlerini kontrol eden bir sahibi şifresi ve belgeyi açmayı kontrol eden bir kullanıcı şifresi. Her ikisi de SecurityOptions sınıfı aracılığıyla ayarlanır.

//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/password-protect.java
import com.ironsoftware.ironpdf.*;
import com.ironsoftware.ironpdf.security.*;

PdfDocument pdf = PdfDocument.renderHtmlAsPdf("<h1>Secure Document</h1>");

SecurityOptions security = new SecurityOptions();

// Require a password to open the document
security.setUserPassword("user123");

// Require a separate password to edit, print, or copy content
security.setOwnerPassword("owner456");

// Restrict printing to prevent unauthorized reproduction
security.setAllowUserPrinting(PrintOptions.FullPrintQuality);

PdfSecurityManager securityManager = new PdfSecurityManager(pdf);
securityManager.setSecurityOptions(security);

pdf.saveAs("secure_document.pdf");
//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/password-protect.java
import com.ironsoftware.ironpdf.*;
import com.ironsoftware.ironpdf.security.*;

PdfDocument pdf = PdfDocument.renderHtmlAsPdf("<h1>Secure Document</h1>");

SecurityOptions security = new SecurityOptions();

// Require a password to open the document
security.setUserPassword("user123");

// Require a separate password to edit, print, or copy content
security.setOwnerPassword("owner456");

// Restrict printing to prevent unauthorized reproduction
security.setAllowUserPrinting(PrintOptions.FullPrintQuality);

PdfSecurityManager securityManager = new PdfSecurityManager(pdf);
securityManager.setSecurityOptions(security);

pdf.saveAs("secure_document.pdf");
JAVA

AllowUserPrinting ayarı, PrintOptions enum değerlerini kabul eder: FullPrintQuality, LowQualityPrint veya NoPrint. Sahip şifresi ayarlanmış ancak kullanıcı şifresi boş bırakılmışsa, belge şifresiz olarak açılır ama düzenleme ve diğer işlemler için bir PDF editöründe sahibi şifresi gereklidir.

UyarıPDF şifre koruması dosyayı şifreler, ancak doğru erişim kontrol sistemlerinin yerine geçmez. Özelleşmiş araçlara sahip azimli kullanıcılar zayıf şifrelere yönelik kaba kuvvet saldırıları deneyebilir. Gerçek güvenlik gerektiren belgeler için güçlü, rastgele oluşturulmuş şifreler kullanın.


Dinamik Verilerle Bir HTML Şablonunu Nasıl Dönüştürürüm?

Veri odaklı bir HTML şablonundan PDF üretmek, IronPDF için en yaygın üretim kullanım durumlarından biridir. Standart yaklaşım, bir şablon kütüphanesi veya dize işlemleri kullanarak Java'da HTML dizesini oluşturmak, ardından bitmiş dizeyi renderHtmlAsPdf'ye aktarmaktır.

//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/dynamic-template.java
import com.ironsoftware.ironpdf.*;

// Simulate data from a database or service layer
String customerName  = "Acme Corp";
String invoiceNumber = "INV-20240501";
String totalAmount   = "$1,250.00";
String dueDate       = "2024-06-01";

// Build the HTML template with real data injected
String html = "<!DOCTYPE html><html><head>" +
    "<style>body{font-family:Arial,sans-serif;margin:40px;}" +
    "table{width:100%;border-collapse:collapse;}" +
    "th,td{border:1px solid #ccc;padding:8px;text-align:left;}" +
    "th{background:#f4f4f4;}</style></head><body>" +
    "<h1>Invoice</h1>" +
    "<p><strong>Customer:</strong> " + customerName + "</p>" +
    "<p><strong>Invoice #:</strong> " + invoiceNumber + "</p>" +
    "<table><tr><th>Description</th><th>Amount</th></tr>" +
    "<tr><td>Professional Services</td><td>" + totalAmount + "</td></tr>" +
    "</table>" +
    "<p><strong>Due Date:</strong> " + dueDate + "</p>" +
    "</body></html>";

PdfDocument pdf = PdfDocument.renderHtmlAsPdf(html);
pdf.saveAs(invoiceNumber + ".pdf");
//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/dynamic-template.java
import com.ironsoftware.ironpdf.*;

// Simulate data from a database or service layer
String customerName  = "Acme Corp";
String invoiceNumber = "INV-20240501";
String totalAmount   = "$1,250.00";
String dueDate       = "2024-06-01";

// Build the HTML template with real data injected
String html = "<!DOCTYPE html><html><head>" +
    "<style>body{font-family:Arial,sans-serif;margin:40px;}" +
    "table{width:100%;border-collapse:collapse;}" +
    "th,td{border:1px solid #ccc;padding:8px;text-align:left;}" +
    "th{background:#f4f4f4;}</style></head><body>" +
    "<h1>Invoice</h1>" +
    "<p><strong>Customer:</strong> " + customerName + "</p>" +
    "<p><strong>Invoice #:</strong> " + invoiceNumber + "</p>" +
    "<table><tr><th>Description</th><th>Amount</th></tr>" +
    "<tr><td>Professional Services</td><td>" + totalAmount + "</td></tr>" +
    "</table>" +
    "<p><strong>Due Date:</strong> " + dueDate + "</p>" +
    "</body></html>";

PdfDocument pdf = PdfDocument.renderHtmlAsPdf(html);
pdf.saveAs(invoiceNumber + ".pdf");
JAVA

Daha büyük projeler için, HTML şablonlarını ayrı dosyalar olarak yönetmek, veri enjekte etmek için bir konteks nesnesi kullanmak ve dize birleştirmeden daha temiz bir şablon sözdizimi sağlamak için Thymeleaf veya Freemarker gibi bir Java şablonlama kütüphanesini düşünün. Her iki kütüphane de doğrudan renderHtmlAsPdf'ye aktarılan düz bir HTML dizesi üretir.

İpuçlarıToplu işte PDF'ler oluştururken — örneğin, müşteri başına bir fatura — döngüden önce ChromePdfRenderOptions'yi bir kez örneklendirin ve her render çağrısı için aynı örneği yeniden kullanın. Her çağrı için yeni bir seçenekler nesnesi oluşturmak, gereksiz nesne tahsis yükü ekler.


Java'da Bir PDF'den Metin Nasıl Çıkarırım?

PdfDocument.extractAllText, bir PDF'deki her sayfadaki tüm metin içeriğini okur ve tek bir dize olarak döndürür. Bu, arama endeksleme, veri çıkarma ve render sonrasındaki içerik doğrulama için faydalıdır.

//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/extract-text.java
import com.ironsoftware.ironpdf.*;
import java.nio.file.Paths;

// Open an existing PDF (or use the result of a render call)
PdfDocument pdf = PdfDocument.fromFile(Paths.get("output.pdf"));

// Extract all text content as a plain string
String text = pdf.extractAllText();
System.out.println(text);
//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/extract-text.java
import com.ironsoftware.ironpdf.*;
import java.nio.file.Paths;

// Open an existing PDF (or use the result of a render call)
PdfDocument pdf = PdfDocument.fromFile(Paths.get("output.pdf"));

// Extract all text content as a plain string
String text = pdf.extractAllText();
System.out.println(text);
JAVA

Dönen dize, her sayfadaki metinlerin okuma sırasını korur ancak biçimlendirme içermez. Sütunlar ve tablo hücreleri arasındaki boşluk, boşluklar olarak temsil edilir. Birden fazla mantıksal bölüm içeren PDF'ler için, extractTextFromPage(int pageIndex) tek bir sayfadaki metni izole eder; bu, büyük belgeleri sayfa sayfa işlerken daha verimlidir.

Metin çıkarma, metnin PDF yapısında gerçek metin nesneleri olarak depolandığı PDF'lerde çalışır — renderHtmlAsPdf tarafından oluşturulan PDF'ler her zaman bu koşulu karşılar. Sayfaların görüntü olarak olduğu taranmış belgeler, metin çıkarımı mümkün olmadan önce OCR gerektirir. IronOCR, Java ve .NET uygulamalarına OCR yetenekleri ekleyen tamamlayıcı bir Iron Software kütüphanesidir.

Görüntü çıkarma için, belgede bulunan her görüntü için bir tane olmak üzere BufferedImage nesnelerinin bir listesini döndüren pdf.extractAllImages() kullanın. Tam kod desenleri için PDF'den metin çıkarma örneği ve PDF'den görüntü çıkarma örneğine bakın.


Bir PDF Dosyasını Nasıl Sıkıştırırım?

PdfDocument.compressImages, gömülü görüntüleri daha düşük kalitede yeniden kodlayarak dosya boyutunu küçültür. Bu, büyük fotoğraf veya afiş resimleri içeren web sayfalarından üretilmiş PDF'ler için özellikle etkili

//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/compress-pdf.java
import com.ironsoftware.ironpdf.*;
import java.nio.file.Paths;

PdfDocument pdf = PdfDocument.fromFile(Paths.get("large_report.pdf"));

// Compress embedded images to 60% quality (0–100 scale)
pdf.compressImages(60);

pdf.saveAs("compressed_report.pdf");
//:path=/static-assets/pdf/content-code-examples/tutorials/html-to-pdf/compress-pdf.java
import com.ironsoftware.ironpdf.*;
import java.nio.file.Paths;

PdfDocument pdf = PdfDocument.fromFile(Paths.get("large_report.pdf"));

// Compress embedded images to 60% quality (0–100 scale)
pdf.compressImages(60);

pdf.saveAs("compressed_report.pdf");
JAVA

Kalite değerleri genellikle %40-%70 arası dosya boyutu azaltırken, ekran okuma için kabul edilebilir görsel sadakat sağlar. 40'ın altındaki değerler fotoğraflarda görülebilir kusurlar oluşturabilir, ancak geniş tek renkli alanlara sahip diyagramlar ve ekran görüntüleri için kabul edilebilir.

Aşırı yüklenmiş compressImages(int quality, boolean scaleExistingImages) yöntemi, PDF'de görüntülenen boyutundan daha büyük olan görüntülerin ölçeklendirilip ölçeklendirilmeyeceğine ilişkin bir boole değeri de kabul eder. Bunu true olarak ayarlamak, yüksek çözünürlüklü bir resim gömüldüğünde ancak sayfada çok daha küçük bir boyutta görüntülendiğinde ortaya çıkan fazla çözünürlüğü ortadan kaldırarak dosya boyutunu daha da azaltır. İkili çözünürlükte resimlerin retina ekranları için sunulduğu web-to-PDF dönüşümlerinde yaygındır.

PDF sıkıştırma örneği, çok sayfalı belgeler arasında toplu sıkıştırmayı ve sıkıştırmadan sonra boyut azalımını nasıl doğrulayacağınızı gösterir.


Sonraki Adımlar

Bu öğretici, üç HTML'den PDF'e dönüştürme yöntemlerini, kurulumu, lisans konfigürasyonunu, render seçeneklerini, başlığı ve altbilgileri, sayfa düzen ayarlarını, metin çıkarımını ve dosya sıkıştırmayı kapsıyordu.

IronPDF için Java dokümantasyonu içinde bu kaynakları keşfedin:

  1. PDF üretim ayarları — Hassas render kontrolü için DPI, yakınlaştırma, zaman aşımı ve CSS medya türü yapılandırın.
  2. Başlıklar ve altbilgiler — Marka logoları ve özel düzenlerle HTML başlıkları ve altbilgileri ekleyin.
  3. Sayfa düzeni — Baskıya hazır çıktı için özel kenar boşluklarını ve kağıt boyutlarını ayarlayın.
  4. Filigranlar — Belge güvenliğini sağlamak için arka plan ve ön plan filigranları uygulayın.
  5. İçerik çıkarma — Aşağı yönde işleme için PDF'lardan metinleri çıkarın ve görüntüleri çıkarın.
  6. Dosya sıkıştırma — Depolama ve e-posta iletimi için PDF dosya boyutunu düşürün.
  7. API Referansı — Her sınıf ve yöntemi görmek için IronPDF Java API referansı üzerine göz atın.

Ücretsiz deneme başlatın ve bugün Java uygulamanızda HTML'yi PDF'ye dönüştürmeye başlayın. Dağıtmaya hazır olduğunuzda, projeniz için uygun planı bulmak üzere lisanslama seçeneklerini görün.

Sıkça Sorulan Sorular

HTML dizelerini Java'da PDF'ye nasıl dönüştürürüm?

HTML dizesiyle PdfDocument.renderHtmlAsPdf çağrısı yapın. Göreceli CSS, resim ve komut dosyası referanslarının doğru şekilde çözülmesi için ikinci argüman olarak isteğe bağlı bir temel yolu girin. Dosyayı yazmak için döndürülen PdfDocument üzerinde saveAs çağrısı yapın.

Bir URL'yi Java'da PDF'ye nasıl dönüştürürüm?

Tam nitelikli URL ile PdfDocument.renderUrlAsPdf çağrısı yapın. IronPDF sayfayı çeker, JavaScript'in yürütülmesini bekler ve tamamen yüklenmiş DOM'u PDF'ye render eder.

Java'da yerel bir HTML dosyasını PDF'ye nasıl dönüştürürüm?

Mutlak dosya yolu ile PdfDocument.renderHtmlFileAsPdf çağrısı yapın. HTML dosyasındaki tüm göreceli varlık referansları otomatik olarak bu dosyanın dizinine göre çözülür.

Maven kullanarak bir Java projesinde IronPDF'yi nasıl kurarım?

pom.xml içinde groupId com.ironsoftware ve artifactId ironpdf ile IronPDF bağımlılığını ekleyin, ardından proje kökünden mvn install çalıştırın.

IronPDF tarafından üretilen PDF'lerden filigranı nasıl kaldırırım?

Herhangi bir işleme çağrısından önce geçerli bir lisans anahtarı ile License.setLicenseKey çağrısı yapın. Lisans anahtarı olmadan, IronPDF her sayfaya döşenmiş bir filigran damgalar.

Java'da bir PDF'ye başlıklar ve alt başlıklar nasıl eklerim?

TextHeaderFooter örneği oluşturun, metin özelliklerini {page} ve {total-pages} gibi format belirteçlerini kullanarak ayarlayın, ardından pdf.addTextHeaders ve pdf.addTextFooters çağrısı yapın. Logolarla stilize edilmiş başlıklar için HtmlHeaderFooter kullanın.

Java'da PDF sayfa kenar boşluklarını ve kağıt boyutunu nasıl ayarlarım?

ChromePdfRenderOptions örneği oluşturun ve setMarginTop, setMarginBottom, setMarginLeft, setMarginRight (milimetre cinsinden) ve setPaperSize yöntemlerini çağırın ve bir PaperSize enum değeri ayarlayın. Seçenekleri herhangi bir işleme yöntemine iletin.

Java'da birden çok PDF'yi nasıl birleştiririm?

Belirlenen sırayla belgeleri içeren bir List oluşturun ve bunu PdfDocument.merge yöntemine iletin. Yöntem, tüm kaynaklardan gelen tüm sayfaları içeren yeni bir PdfDocument döndürür.

Java'da bir PDF'yi nasıl şifrelerim?

SecurityOptions örneği oluşturun, setUserPassword ve setOwnerPassword çağrısı yapın, ardından belgeyi kaydetmeden önce PdfSecurityManager aracılığıyla uygulayın.

Java'da PDF'den metni nasıl çıkartabilirim?

Tüm metin içeriğini tek bir dize olarak almak için pdf.extractAllText() çağrısı yapın. Belirli bir sayfadan metin çıkarmak için extractTextFromPage(int pageIndex) kullanın.

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?
Sürüm: 2026.5 just released
Still Scrolling Icon

Hâlâ Kaydırıyor Musunuz?

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