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, modern tarayıcılarda bulunan aynı işleme motorunu kullanarak HTML içeriğini piksel mükemmel PDF belgelerine dönüştürür. Java uygulamaları, ek işleme yazılımı veya bir GUI ortamı gerektirmeden HTML dizelerinden, yerel HTML dosyalarından veya canlı web sayfalarından PDF oluşturabilir.

Bu eğitim, IronPDF for Java'da mevcut olan tüm üç HTML'den PDF'ye dönüştürme yöntemlerini ve ayrıca kurulum, lisanslama ve yapılandırma seçeneklerini kapsar. IronPDF for .NET'i halihazırda kullanan geliştiriciler, Java API'sini tanıdık bulacaklardır; eşdeğer .NET eğitimi HTML'den PDF'ye .NET Eğitiminda mevcuttur.

Lütfen dikkate alınIronPDF for Java, Java 8 veya üzeri gerekli olup, Spring Boot, Java EE ve Micronaut dahil olmak üzere tüm büyük JVM-tabanlı çerçevelerle uyumludur.

Hızlı Başlangıç: HTML'den PDF oluşturun

Aşağıdaki örnek, bir HTML dizesinden bir sayfa PDF oluşturur ve bunu diskete kaydeder. Maven üzerinden kütüphanenin kurulmasından sonra (Adım 1), gerekli olan tüm kod budur:

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

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

// Render an HTML string to a PDF file
PdfDocument pdf = PdfDocument.renderHtmlAsPdf("<h1>Hello from IronPDF!</h1><p>Generated in Java.</p>");
pdf.saveAs("output.pdf");
//:path=/static-assets/pdf/content-code-examples/tutorials/generate-pdfs/quickstart-html-string.java
import com.ironsoftware.ironpdf.*;

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

// Render an HTML string to a PDF file
PdfDocument pdf = PdfDocument.renderHtmlAsPdf("<h1>Hello from IronPDF!</h1><p>Generated in Java.</p>");
pdf.saveAs("output.pdf");
JAVA

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

İlk Adım:
green arrow pointer

İçindekiler


Bir Java Projesinde IronPDF Nasıl Kurulur?

IronPDF for Java, Maven Central depo üzerinde mevcuttur. Önerilen kurulum yöntemi Maven'dir, ancak yapı sistemi kullanılmayan projeler için manuel JAR yükleme de desteklenmektedir.

Maven Bağımlılığı Olarak Kurulum

Projenizin pom.xml dosyasının dependencies bölümüne aşağıdaki öğeleri ekleyin:

//:path=/static-assets/pdf/content-code-examples/tutorials/generate-pdfs/maven-dependency.xml
<dependency>
  <groupId>com.ironsoftware</groupId>
  <artifactId>ironpdf</artifactId>
  <version>2024.9.1</version>
</dependency>
<dependency>
  <groupId>org.slf4j</groupId>
  <artifactId>slf4j-simple</artifactId>
  <version>2.0.5</version>
</dependency>
//:path=/static-assets/pdf/content-code-examples/tutorials/generate-pdfs/maven-dependency.xml
<dependency>
  <groupId>com.ironsoftware</groupId>
  <artifactId>ironpdf</artifactId>
  <version>2024.9.1</version>
</dependency>
<dependency>
  <groupId>org.slf4j</groupId>
  <artifactId>slf4j-simple</artifactId>
  <version>2.0.5</version>
</dependency>
XML

İlk eser, IronPDF'yi alır. The second is an SLF4J logging implementation. IronPDF, işleme sırasında tanılayıcı mesajlar vermek için SLF4J kullanır; you can substitute it with Logback or Log4j 2, or omit logging entirely.

Bağımlılıkları indirmek için proje kök dizininde mvn install komutunu çalıştırın. Sürüm numarasını sabitlemeden önce IronPDF'nin en son sürümünü kontrol edin, zira değişiklik günlüğü tüm mevcut ve geçmiş yayınları listeler.

JAR Dosyasını Manuel Yükleme

Maven kullanmayan geliştiriciler, IronPDF fat JAR dosyasını doğrudan Maven Central'dan indirebilir ve bunu proje sınıf yoluna ekleyebilir. Fat JAR, tüm geçişli bağımlılıkları bir araya getirir.

İpuçlarıYeni projeler için önerilen yaklaşım Maven'dir. JAR kurulumu manuel bağımlılık yönetimi gerektirir ve daha büyük projelerde sürüm çakışmalarına yol açabilir.

IronPDF Paketini İçe Aktarın

Tüm PDF oluşturma ve işleme sınıfları com.ironsoftware.ironpdf paketinde bulunur. IronPDF kullanan herhangi bir Java kaynak dosyasına bu içe aktarma ifadesini ekleyin:

//:path=/static-assets/pdf/content-code-examples/tutorials/generate-pdfs/import-package.java
import com.ironsoftware.ironpdf.*;
//:path=/static-assets/pdf/content-code-examples/tutorials/generate-pdfs/import-package.java
import com.ironsoftware.ironpdf.*;
JAVA

Lisans Anahtarını Ayarlayın

Bir lisans anahtarı olmadan, IronPDF her sayfada döşenmiş bir filigran ile PDF dönüştürür. Filigranı kaldırmak için, herhangi bir görüntüleme yöntemini çağırmadan önce License.setLicenseKey öğesine geçerli bir lisans anahtarı iletin:

//:path=/static-assets/pdf/content-code-examples/tutorials/generate-pdfs/set-license-key.java
import com.ironsoftware.ironpdf.*;

// Set the license key before any rendering call
License.setLicenseKey("YOUR-LICENSE-KEY");
//:path=/static-assets/pdf/content-code-examples/tutorials/generate-pdfs/set-license-key.java
import com.ironsoftware.ironpdf.*;

// Set the license key before any rendering call
License.setLicenseKey("YOUR-LICENSE-KEY");
JAVA

Bu çağrıyı uygulama başlatıldığında, herhangi bir PDF oluşturma mantığı çalışmadan önce yerleştirin. Deneme anahtarı almak için ücretsiz denemeye başlayın veya üretim kullanımı için lisans seçeneklerini görüntüleyin.

Günlük Dosya Yolunu Yapılandırın

IronPDF, uygulama çalışma dizininde IronPdfEngine.log adlı bir günlük dosyasına görüntüleme tanılama bilgilerini yazar. Dosya adını veya konumunu değiştirmek için Settings.setLogPath'yi arayın:

//:path=/static-assets/pdf/content-code-examples/tutorials/generate-pdfs/set-log-path.java
import com.ironsoftware.ironpdf.*;
import java.nio.file.Paths;

// Configure logging before calling any rendering methods
Settings.setLogPath(Paths.get("logs/ironpdf.log"));
//:path=/static-assets/pdf/content-code-examples/tutorials/generate-pdfs/set-log-path.java
import com.ironsoftware.ironpdf.*;
import java.nio.file.Paths;

// Configure logging before calling any rendering methods
Settings.setLogPath(Paths.get("logs/ironpdf.log"));
JAVA

ÖnemliHerhangi bir PDF dönüştürme veya işleme yönteminden önce Settings.setLogPath'yi çağırın. İşleme başladıktan sonra yapılan çağrılar etkili olmayacaktır.

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

PdfDocument.renderHtmlAsPdf, bir HTML dizesini PdfDocument nesnesine dönüştürür; bu nesne daha sonra diske kaydedilebilir veya diğer işleme yöntemlerine aktarılabilir. Bu yöntem, <head> ve <body> öğeleriyle tam sayfa işaretlemesi dahil olmak üzere W3C uyumlu tüm HTML'leri kabul eder.

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

// Convert a simple HTML string to PDF
PdfDocument pdf = PdfDocument.renderHtmlAsPdf("<h1>Hello from IronPDF!</h1>");
// Save the resulting PDF to a file
pdf.saveAs("htmlstring_to_pdf.pdf");
//:path=/static-assets/pdf/content-code-examples/tutorials/generate-pdfs/html-string-to-pdf.java
import com.ironsoftware.ironpdf.*;

// Convert a simple HTML string to PDF
PdfDocument pdf = PdfDocument.renderHtmlAsPdf("<h1>Hello from IronPDF!</h1>");
// Save the resulting PDF to a file
pdf.saveAs("htmlstring_to_pdf.pdf");
JAVA
PDF output showing a rendered H1 heading generated from an HTML string using PdfDocument.renderHtmlAsPdf

PdfDocument.renderHtmlAsPdf yöntemi, HTML biçimlendirmesini PDF'ye işler, tüm W3C uyumlu stil ve yapıları korur.

Yöntem, bir PdfDocument örneği döndürür. PDF'yi diske yazmak için saveAs'yi çağırın veya akış veya depolama için ham PDF baytlarını almak için getBinaryData'yi kullanın.

renderHtmlAsPdf, tüm HTML, CSS ve JavaScript içeriğini standartlara uygun bir tarayıcının yaptığı şekilde işler. Ortaya çıkan PDF, sayfanın Chrome'da görüntülendiğinde tam olarak nasıl görüneceğini yansıtır.

Bu yöntem hakkında daha fazla ayrıntı için, IronPDF Java örnekleri sayfasındaki HTML dizesinden PDF'ye kod örneği bölümüne bakın.

HTML Dizesinde Yerel Varlıkları Nasıl Yüklerim?

HTML genellikle stil dosyaları, resimler, betikler gibi dış varlıkları göreli yoldan referans alır. renderHtmlAsPdf, bu referansları çözümlemek için temel yolu belirleyen isteğe bağlı ikinci bir argüman kabul eder. Temel yol, yerel bir dizini ya da bir URL'yi işaret edebilir.

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

// HTML with references to local stylesheets and images
String html = "<html>"
    + "<head>"
    +   "<title>Invoice</title>"
    +   "<link rel='stylesheet' type='text/css' href='style.css'>"
    + "</head>"
    + "<body>"
    +   "<div class='content'>"
    +     "<h1>Invoice #1001</h1>"
    +     "<img src='logo.png' alt='Company Logo'/>"
    +   "</div>"
    + "</body>"
    + "</html>";

// The second argument resolves relative asset paths
PdfDocument pdf = PdfDocument.renderHtmlAsPdf(html, "C:/invoices/");
pdf.saveAs("invoice.pdf");
//:path=/static-assets/pdf/content-code-examples/tutorials/generate-pdfs/html-string-local-assets.java
import com.ironsoftware.ironpdf.*;

// HTML with references to local stylesheets and images
String html = "<html>"
    + "<head>"
    +   "<title>Invoice</title>"
    +   "<link rel='stylesheet' type='text/css' href='style.css'>"
    + "</head>"
    + "<body>"
    +   "<div class='content'>"
    +     "<h1>Invoice #1001</h1>"
    +     "<img src='logo.png' alt='Company Logo'/>"
    +   "</div>"
    + "</body>"
    + "</html>";

// The second argument resolves relative asset paths
PdfDocument pdf = PdfDocument.renderHtmlAsPdf(html, "C:/invoices/");
pdf.saveAs("invoice.pdf");
JAVA
PDF output displaying an invoice with styled layout, logo image, and CSS formatting applied from local assets

Bir temel yol sağlandığında, renderHtmlAsPdf göreli varlık referanslarını o dizinden çözer ve tamamen stilize bir PDF üretir.

Temel yol argümanı, hem mutlak dosya sistemi yolları hem de URL dizileri ile çalışır. Bu, renderHtmlAsPdf'yi diskte depolanan veya bir web sunucusundan sunulan şablonlardan PDF'ler oluşturmak için uygun hale getirir.

İpuçlarıWindows tarzı ters eğik çizgi (C:\invoices\) kullanan yollar, platformlar arası uyumluluk için düz eğik çizgiye dönüştürülmeli veya Paths.get() kullanılmalıdır.

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

PdfDocument.renderUrlAsPdf, belirtilen URL'deki canlı bir web sayfasını alır ve PDF olarak görüntüler. Yöntem, işlenmeden önce tam sayfayı, tüm dış CSS, JavaScript ve resimleri dahil ederek yükler.

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

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

// Render a live web page as a PDF document
PdfDocument pdf = PdfDocument.renderUrlAsPdf("https://en.wikipedia.org/wiki/PDF");
pdf.saveAs("url_to_pdf.pdf");
JAVA
PDF output of the Wikipedia article on PDF format, showing the page layout and content rendered by PdfDocument.renderUrlAsPdf

PdfDocument.renderUrlAsPdf yöntemi, JavaScript tarafından oluşturulan içerikler dahil, bir web sayfasının tam işlenmiş halini yakalar.

renderUrlAsPdf, işlenen sayfayı yakalamadan önce JavaScript'in yürütülmesinin tamamlanmasını bekler; bu da, dinamik olarak oluşturulan içeriğin (grafikler veya AJAX aracılığıyla yüklenen veriler gibi) çıktı PDF'sinde görüneceği anlamına gelir.

Eşdeğer .NET uygulaması veya ek URL-to-PDF seçenekleri için, URL'yi PDF'ye dönüştürme kod örneği bölümüne bakın.

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

PdfDocument.renderHtmlFileAsPdf yerel bir HTML dosyasını okur ve PDF olarak görüntüler. HTML dosyasında referans verilen tüm göreli yollar (stil dosyaları, resimler, betikler) HTML dosyasının dizinine göre çözülür.

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

// Convert a local HTML file to PDF
// IronPDF resolves relative asset paths from the HTML file's directory
PdfDocument pdf = PdfDocument.renderHtmlFileAsPdf("C:/invoices/TestInvoice1.html");
pdf.saveAs("htmlfile_to_pdf.pdf");
//:path=/static-assets/pdf/content-code-examples/tutorials/generate-pdfs/html-file-to-pdf.java
import com.ironsoftware.ironpdf.*;

// Convert a local HTML file to PDF
// IronPDF resolves relative asset paths from the HTML file's directory
PdfDocument pdf = PdfDocument.renderHtmlFileAsPdf("C:/invoices/TestInvoice1.html");
pdf.saveAs("htmlfile_to_pdf.pdf");
JAVA

Bu yaklaşım, fatura şablonları, raporlar veya HTML dosyaları ve dosyalarına bağlı CSS ve resim varlıkları olarak saklanan sertifikalar gibi şablonlanmış belge oluşturma için iyi çalışır. IronPDF, tüm CSS yerleşim kurallarını koruyarak dosyayı bir tarayıcı kadar doğrulukla işler.

{i:(HTML dosya yolu mutlak olmalıdır. renderHtmlFileAsPdf'ye aktarılan göreceli yollar, JVM çalışma dizininden çözümlenir; bu da sunucu ortamlarında beklenmedik sonuçlara yol açabilir.)}]

PDF Çıktı Ayarlarını Nasıl Özelleştiririm?

PdfRenderOptions sınıfı, sayfa düzenini ve görüntüleme davranışını kontrol eder. Bir PdfRenderOptions örneği oluşturun, gerekli özellikleri yapılandırın ve bunu herhangi bir görüntüleme yöntemine aktarın.

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

// Configure rendering options before generating the PDF
PdfRenderOptions options = new PdfRenderOptions();
// Set the zoom level (100 = normal size)
options.setZoom(100);
// Wait for JavaScript to finish before rendering
options.setJavaScriptTimeout(5000);
// Enable printing of background colors and images
options.setPrintBackground(true);

PdfDocument pdf = PdfDocument.renderHtmlAsPdf(
    "<h1>Customized PDF</h1>",
    options
);
pdf.saveAs("customized.pdf");
//:path=/static-assets/pdf/content-code-examples/tutorials/generate-pdfs/render-options.java
import com.ironsoftware.ironpdf.*;
import com.ironsoftware.ironpdf.render.*;

// Configure rendering options before generating the PDF
PdfRenderOptions options = new PdfRenderOptions();
// Set the zoom level (100 = normal size)
options.setZoom(100);
// Wait for JavaScript to finish before rendering
options.setJavaScriptTimeout(5000);
// Enable printing of background colors and images
options.setPrintBackground(true);

PdfDocument pdf = PdfDocument.renderHtmlAsPdf(
    "<h1>Customized PDF</h1>",
    options
);
pdf.saveAs("customized.pdf");
JAVA

PdfRenderOptions sınıfı, DPI, görüntü alanı genişliği, kağıt yönü ve zaman aşımı değerlerini kontrol etmek için ek özellikler sağlar. Mevcut seçeneklerin tam listesi için PDF üretim ayarları kod örneği bölümüne bakın.

PDF'ye Üstbilgi ve Altbilgi Nasıl Eklerim?

IronPDF, hem metin tabanlı hem de HTML tabanlı üstbilgi ve altbilgileri destekler. Metin üstbilgileri, sayfa numaraları ve belge başlıkları gibi yaygın değerler için önceden tanımlanmış birleştirme alanları kullanır; HTML üstbilgileri, tamamen özelleştirilmiş yerleşimler için rastgele HTML işaretlemelerini kabul eder.

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

PdfDocument pdf = PdfDocument.renderHtmlAsPdf("<h1>Annual Report</h1><p>Content goes here.</p>");

// Create a text-based header using merge fields
TextHeaderFooter header = new TextHeaderFooter();
header.setCenterText("Annual Report");
header.setRightText("{page} of {total-pages}");
header.setFont(com.ironsoftware.ironpdf.font.FontTypes.Helvetica);
header.setFontSize(10.0);

// Create a text-based footer
TextHeaderFooter footer = new TextHeaderFooter();
footer.setLeftText("Confidential");
footer.setRightText("Generated by IronPDF");

pdf.addTextHeaders(header);
pdf.addTextFooters(footer);

pdf.saveAs("report_with_headers.pdf");
//:path=/static-assets/pdf/content-code-examples/tutorials/generate-pdfs/headers-footers.java
import com.ironsoftware.ironpdf.*;
import com.ironsoftware.ironpdf.headerfooter.*;

PdfDocument pdf = PdfDocument.renderHtmlAsPdf("<h1>Annual Report</h1><p>Content goes here.</p>");

// Create a text-based header using merge fields
TextHeaderFooter header = new TextHeaderFooter();
header.setCenterText("Annual Report");
header.setRightText("{page} of {total-pages}");
header.setFont(com.ironsoftware.ironpdf.font.FontTypes.Helvetica);
header.setFontSize(10.0);

// Create a text-based footer
TextHeaderFooter footer = new TextHeaderFooter();
footer.setLeftText("Confidential");
footer.setRightText("Generated by IronPDF");

pdf.addTextHeaders(header);
pdf.addTextFooters(footer);

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

{page} ve {total-pages} birleştirme alanları, görüntüleme sırasında geçerli sayfa numarası ve toplam sayfa sayısı ile değiştirilir. Şirket logosu içeren altbilgi gibi daha gelişmiş düzenler için, TextHeaderFooter yerine HtmlHeaderFooter kullanın.

HTML tabanlı üstbilgi ve altbilgiler hakkında tam ayrıntılar için, üstbilgi ve altbilgi ekleme kod örneği bölümüne bakın.

İpuçlarıÜst bilgi ve alt bilgi, sayfa kenar boşluklarının içine yerleştirilir. Üst bilgi veya alt bilgi uygulamadan önce sayfa içeriği ile çakışmayı önlemek için üst veya alt kenar boşluğunu artırın.

Özel Kenar Boşlukları ve Sayfa Boyutunu Nasıl Ayarlayabilirim?

Sayfa boyutu ve kenar boşlukları, PDF oluşturulmadan önce PdfRenderOptions nesnesinde yapılandırılır. IronPDF, standart kağıt boyutlarını (A4, Letter, Legal) ve tamamen özel boyutları destekler.

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

PdfRenderOptions options = new PdfRenderOptions();
// Set margins in millimeters: top, right, bottom, left
options.setMarginTop(25);
options.setMarginRight(20);
options.setMarginBottom(25);
options.setMarginLeft(20);
// Use A4 paper size
options.setPaperSize(PaperSize.A4);

PdfDocument pdf = PdfDocument.renderHtmlAsPdf("<h1>Formatted Document</h1>", options);
pdf.saveAs("formatted_document.pdf");
//:path=/static-assets/pdf/content-code-examples/tutorials/generate-pdfs/margins-page-size.java
import com.ironsoftware.ironpdf.*;
import com.ironsoftware.ironpdf.render.*;
import com.ironsoftware.ironpdf.page.*;

PdfRenderOptions options = new PdfRenderOptions();
// Set margins in millimeters: top, right, bottom, left
options.setMarginTop(25);
options.setMarginRight(20);
options.setMarginBottom(25);
options.setMarginLeft(20);
// Use A4 paper size
options.setPaperSize(PaperSize.A4);

PdfDocument pdf = PdfDocument.renderHtmlAsPdf("<h1>Formatted Document</h1>", options);
pdf.saveAs("formatted_document.pdf");
JAVA

Desteklenen kağıt boyutları ve birimlerinin tam listesi için özel kağıt boyutu kod örneği ve özel kenar boşlukları kod örneği bölümüne başvurun.

PDF'ye Nasıl Filigran Eklerim?

PdfDocument.applyWatermark, belgedeki her sayfaya metin veya resim filigranı uygular. Filigran, varsayılan olarak sayfa içeriğinin altındaki ayrı bir katmanda görüntülenir veya isStampBehind bayrağı false olarak ayarlandığında sayfa içeriğinin üstünde görüntülenir.

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

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

// Apply an HTML watermark; supports full CSS styling
String watermarkHtml = "<h1 style='color: rgba(200, 0, 0, 0.2); transform: rotate(-45deg); font-size: 60px;'>DRAFT</h1>";
// Second argument: opacity (0-100), third: rotation (degrees), fourth: stamp behind content
pdf.applyWatermark(watermarkHtml, 50, 45, true);

pdf.saveAs("draft_watermarked.pdf");
//:path=/static-assets/pdf/content-code-examples/tutorials/generate-pdfs/add-watermark.java
import com.ironsoftware.ironpdf.*;

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

// Apply an HTML watermark; supports full CSS styling
String watermarkHtml = "<h1 style='color: rgba(200, 0, 0, 0.2); transform: rotate(-45deg); font-size: 60px;'>DRAFT</h1>";
// Second argument: opacity (0-100), third: rotation (degrees), fourth: stamp behind content
pdf.applyWatermark(watermarkHtml, 50, 45, true);

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

HTML yaklaşımı, yazı tipi, boyut, renk ve şeffaflık dahil olmak üzere filigran stilini hassas bir şekilde kontrol etme imkanı verir. Döngüsel karo desenleri veya resim tabanlı damgalar gibi ileri düzeyde filigran yapılandırmaları için, filigran nasıl yapılır kılavuzu bölümüne bakın.

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

PdfDocument.extractAllText, bir PDF'ye gömülü metin içeriğini okur ve bunu tek bir String olarak döndürür. Bu yöntem, belgede tüm sayfalardan seçilebilir metin çıkarır.

//:path=/static-assets/pdf/content-code-examples/tutorials/generate-pdfs/extract-text.java
import com.ironsoftware.ironpdf.*;

// Load an existing PDF from disk
PdfDocument pdf = PdfDocument.fromFile(java.nio.file.Paths.get("report.pdf"));

// Extract all embedded text from the document
String text = pdf.extractAllText();
System.out.println(text);
//:path=/static-assets/pdf/content-code-examples/tutorials/generate-pdfs/extract-text.java
import com.ironsoftware.ironpdf.*;

// Load an existing PDF from disk
PdfDocument pdf = PdfDocument.fromFile(java.nio.file.Paths.get("report.pdf"));

// Extract all embedded text from the document
String text = pdf.extractAllText();
System.out.println(text);
JAVA

Metin çıkarımı, metnin seçilebilir glifler olarak saklandığı PDF'lerde çalışır. Resim tabanlı taramalar olan PDF'ler için, render edilmiş sayfa imgelerinden metin çıkarmak için IronPDF'i bir OCR kütüphanesi ile eşleştirmeyi düşünün.

Sahife başına metin çıkarmak dahil ek seçenekler için, PDF'den metin çıkarma kod örneği bölümüne bakın.

Java'da Bir PDF'den Görüntüler Nasıl Çıkarırım?

PdfDocument.extractAllImages, PDF'ye gömülü her resim için bir tane olmak üzere BufferedImage nesnelerinin bir listesini döndürür. Döndürülen görüntüler direkt olarak diske kaydedilebilir veya aşağı akış görüntü işleme mantığına iletilebilir.

//:path=/static-assets/pdf/content-code-examples/tutorials/generate-pdfs/extract-images.java
import com.ironsoftware.ironpdf.*;
import java.awt.image.BufferedImage;
import java.io.File;
import java.util.List;
import javax.imageio.ImageIO;

// Load an existing PDF
PdfDocument pdf = PdfDocument.fromFile(java.nio.file.Paths.get("document.pdf"));

// Extract all embedded images
List<BufferedImage> images = pdf.extractAllImages();
for (int i = 0; i < images.size(); i++) {
    ImageIO.write(images.get(i), "PNG", new File("extracted_image_" + i + ".png"));
}
System.out.println("Extracted " + images.size() + " image(s).");
//:path=/static-assets/pdf/content-code-examples/tutorials/generate-pdfs/extract-images.java
import com.ironsoftware.ironpdf.*;
import java.awt.image.BufferedImage;
import java.io.File;
import java.util.List;
import javax.imageio.ImageIO;

// Load an existing PDF
PdfDocument pdf = PdfDocument.fromFile(java.nio.file.Paths.get("document.pdf"));

// Extract all embedded images
List<BufferedImage> images = pdf.extractAllImages();
for (int i = 0; i < images.size(); i++) {
    ImageIO.write(images.get(i), "PNG", new File("extracted_image_" + i + ".png"));
}
System.out.println("Extracted " + images.size() + " image(s).");
JAVA

Belirli sayfalardan görüntü çıkarmak dahil daha fazla çıkarım seçeneği için, PDF'den görüntü çıkarma kod örneği bölümüne 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 PDF dosya boyutunu küçültür. Yöntem, 1'den (minimum kalite, en küçük dosya) 100'e (maksimum kalite) kadar bir kalite değeri kabul eder.

//:path=/static-assets/pdf/content-code-examples/tutorials/generate-pdfs/compress-pdf.java
import com.ironsoftware.ironpdf.*;

// Load a large PDF with embedded images
PdfDocument pdf = PdfDocument.fromFile(java.nio.file.Paths.get("large_report.pdf"));

// Compress images to 60% quality to reduce file size
pdf.compressImages(60);

pdf.saveAs("large_report_compressed.pdf");
//:path=/static-assets/pdf/content-code-examples/tutorials/generate-pdfs/compress-pdf.java
import com.ironsoftware.ironpdf.*;

// Load a large PDF with embedded images
PdfDocument pdf = PdfDocument.fromFile(java.nio.file.Paths.get("large_report.pdf"));

// Compress images to 60% quality to reduce file size
pdf.compressImages(60);

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

Fotoğraflar veya yüksek çözünürlüklü grafikler içeren PDF'lerin boyutunu azaltmanın en etkili yolu görüntü sıkıştırmadır. Gömülü yazı tiplerini kaldırmak gibi ek dosya boyutu azaltma stratejileri için, PDF sıkıştırma kod örneği bölümüne bakın.

İpuçları40 ile 70 arasında bir kalite değeri, çoğu PDF kullanım senaryosu için dosya boyutu azaltma ve görsel sadakat arasında iyi bir denge sağlar.

Bir PDF'yi Programlı Olarak Nasıl Yazdırırım?

PdfDocument.print, standart Java yazdırma API'sini kullanarak sistemin varsayılan yazıcısına bir PDF gönderir. Yöntem, bir yazdırma iletişim kutusu gösterilip gösterilmeyeceğini kontrol eden bir boole kabul eder.

//:path=/static-assets/pdf/content-code-examples/tutorials/generate-pdfs/print-pdf.java
import com.ironsoftware.ironpdf.*;

PdfDocument pdf = PdfDocument.fromFile(java.nio.file.Paths.get("document.pdf"));

// Print silently to the default printer (no dialog shown)
pdf.print(false);
//:path=/static-assets/pdf/content-code-examples/tutorials/generate-pdfs/print-pdf.java
import com.ironsoftware.ironpdf.*;

PdfDocument pdf = PdfDocument.fromFile(java.nio.file.Paths.get("document.pdf"));

// Print silently to the default printer (no dialog shown)
pdf.print(false);
JAVA

true değerini print yöntemine aktararak sistem yazdırma iletişim kutusunu görüntüleyin; böylece kullanıcılar, iş gönderilmeden önce bir yazıcı seçebilir ve yazdırma ayarlarını yapılandırabilir.

Sonraki Adımlar

Bu eğitim, IronPDF for Java'daki temel HTML-to-PDF dönüştürme yöntemlerini, kurulumunu, yapılandırmasını ve ortak belge işleme işlemlerini kapsıyor.

Daha ileri gitmek için:

  1. Burada ele alınmayan ek işleme senaryoları için HTML'den PDF Java kod örneklerinin tam setine göz atın.
  2. Dağıtım, çoklu iş parçacıkları güvenliği ve sunucu yapılandırmasını anlamak için IronPDF for Java belgelerini okuyun.
  3. Tüm yöntem imzaları ve parametre açıklamaları için IronPDF Java API referansının tamamını keşfedin.

Su işaretsiz PDF'ler oluşturmak için ücretsiz bir deneme başlatın veya projeniz için doğru planı bulmak için lisans seçeneklerine göz atın.


Hızlı Öğretici Erişimi

Java geliştirme için IntelliJ IDEA IDE logosu

Bu Eğitimi Java Kaynak Kodu olarak İndirin

Bu eğitimin tam HTML'den PDF'ye Java kaynak kodu, ziplenmiş IntelliJ projesi olarak indirilebilir.

İndir

Bu Eğitimi GitHub'da Keşfedin

Bu projenin kaynak kodu, GitHub'da bir IntelliJ IDEA projesi olarak mevcuttur. Eclipse ve NetBeans dahil olmak üzere diğer popüler Java IDE'lerine de aktarılabilir.

GitHub'da Java HTML'den PDF'ye
Kaynak kod deposu için GitHub logosu
IronPDF Java API referans belgeleri simgesi

API Referansını Görüntüle

Kütüphanede mevcut olan tüm isim alanları, sınıflar, yöntemler ve enum'ları kapsayan IronPDF Java API referansını keşfedin.

API Referansını Görüntüle

Sıkça Sorulan Sorular

IronPDF for Java ne için kullanılır?

IronPDF for Java, Java uygulamaları içerisinde HTML içeriğini PDF belgelere dönüştürür. HTML dizilerini, yerel HTML dosyalarını ve canlı web sayfası URL'lerini dönüştürmeyi destekler ve ayrıca başlık ve altbilgi ekleme, filigran uygulama, metin çıkarımı, görsel çıkarımı ve dosya sıkıştırma araçları sunar.

Bir Java projesine IronPDF nasıl yükleyebilirim?

pom.xml dosyanıza iki Maven bağımlılığı ekleyin: com.ironsoftware:ironpdf ve org.slf4j:slf4j-simple, ardından mvn install çalıştırın. Alternatif olarak, Maven Merkezi'nden fat JAR indirin ve proje sınıf yoluna ekleyin.

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

HTML işaret parantezinizi PdfDocument.renderHtmlAsPdf(htmlString) ile çağırın. Metot bir PdfDocument nesnesi döndürür. Diske yazmak için pdf.saveAs("output.pdf") çağırın.

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

Çağrı PdfDocument.renderUrlAsPdf("https://example.com"). IronPDF sayfayı çeker, JavaScript'in yürütülmesini bekler ve ardından tamamen yüklenmiş sayfayı PDF olarak işler.

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

Çağrı PdfDocument.renderHtmlFileAsPdf("C:/path/to/file.html"). Mutlak dosya yolu kullanın. IronPDF, HTML dosya dizininden göreceli CSS ve görüntü referanslarını otomatik olarak çözer.

IronPDF for Java oluşturulan PDF'lere bir filigran ekliyor mu?

Lisans anahtarı olmadan, IronPDF oluşturulan tüm PDF'lere döşenmiş bir filigran ekler. Filigranı kaldırmak için herhangi bir işleme çağrısı yapmadan önce License.setLicenseKey("YOUR-KEY") ile geçerli bir lisans anahtarı ayarlayın.

IronPDF hangi Java sürümünü gerektirir?

IronPDF for Java, Java 8 veya daha sonraki sürümleri gerektirir. Spring Boot, Java EE, Micronaut ve diğer JVM tabanlı frameworklerle uyumludur.

Java'da IronPDF ile bir PDF'ye sayfa numaralarını nasıl eklerim?

TextHeaderFooter örneği oluşturun ve setRightText("{page} of {total-pages}") çağrısında bulunun. Nesneyi pdf.addTextFooters(footer) çağrınıza iletin. Birleştirme alanları, render zamanında gerçek sayfa numaraları ile değiştirilir.

IronPDF for Java, bir PDF'den metin çıkarabilir mi?

Evet. PdfDocument.fromFile(Paths.get("file.pdf")) ile bir PDF yükleyin, ardından tüm seçilebilir metin içeriğini bir String olarak almak için pdf.extractAllText() çağrısı yapın.

Java'da bir PDF'nin dosya boyutunu nasıl küçültürüm?

pdf.compressImages(quality) çağrısı yapın, burada kalite 1 ile 100 arasında bir tamsayıdır. 60 değeri, çoğu PDF için dosya boyutu ile görüntü sadakati arasında iyi bir denge sağlar.

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.