IRON SUITE KULLANıMı

HTML'den PDF'e C# için .NET Geliştiricileri İçin (Son Kılavuz)

Giriş

Günümüzün web odaklı dünyasında, HTML içeriğini PDF belgelerine (Taşınabilir Belge Formatı) dönüştürme yeteneği birçok uygulama için kritik bir özelliktir. İster raporlardan, faturadan ya da web içeriğinin arşivlenmesinden PDF dosyaları oluşturulması için olsun, HTML'den PDF'e dönüştürme, iş akışlarını kolaylaştırır ve yüksek kaliteli PDF'lerin tutarlı biçimlendirilmesini sağlar. Kütüphaneler, IronPDF gibi bu dönüşümü sağlamak için geliştirici dostu bir yol sağlar ve dinamik içerik, HTML formları ve CSS ve JavaScript'in hassas bir şekilde işlenmesini destekler.

.NET geliştiricileri için, doğru HTML'den PDF'ye dönüştürücü kullanmak, verimliliği, kod sadeliğini ve PDF oluşturma kalitesini etkiler. Modern kütüphaneler, geliştiricilerin yalnızca birkaç satır kod ile HTML stringlerini, tüm web sayfalarını veya HTML dosyalarını doğrudan işlenmiş PDF belgelerine dönüştürmelerine olanak tanır, bu da dinamik belgeler, özel üstbilgiler ve web içeriğinin yazdırılabilir versiyonlarını sağlar.

Öğrenecekleriniz

Bu kılavuzda, C# dilinde HTML'yi PDF'ye dönüştürmeyi öğrenecek ve çeşitli kütüphaneler aracılığıyla PDF dönüştürme yeteneklerini keşfedeceksiniz. Bunlar arasında PDF belgelerini yönetme, HTML formları, özel kenar boşlukları ve güvenli PDF'ler bulunmaktadır. Bu makalede ele alacağımız konular şunlardır:

  1. HTML ve PDF Araçlarını Neden Karşılaştıralım?
  2. IronPDF: HTML'den PDF'e Dönüştürme
  3. Aspose: HTML'den PDF'ye Dönüştürme
  4. iText 9: HTML'den PDF'e Dönüştürme
  5. wkhtmltopdf: HTML'den PDF'ye Dönüşüm
  6. PuppeteerSharp: HTML'den PDF'e Dönüştürme
  7. Sonuç: Neden IronPDF'yi Seçmelisiniz?

Sonunda, IronPDF'in geliştirici dostu ve verimli bir HTML'den PDF'e dönüştürücü olarak neden öne çıktığını anlayacaksınız. Diğer karşılaştırma kılavuzlarımızı kontrol ettiğinizden emin olun, burada IronPDF'in Aspose.PDF, iText 9, wkhtmltopdf ve PuppeteerSharp ile nasıl karşılaştırıldığını daha derinlemesine inceliyoruz, projenize hangisinin daha iyi uyduğunu ve neden IronPDF'in önde çıktığını görün.

Neden HTML'den PDF'e Araçları Karşılaştırmalısınız?

Uygulamanızın performans, kalite ve maliyet gereksinimlerini karşılamasını sağlamak için uygun HTML'den PDF'e dönüştürme aracını seçmek önemlidir. Birçok seçenek mevcut olup, her biri farklı PDF dönüştürme yetenekleri sunduğundan, kapsamlı bir karşılaştırma bilinçli bir karar vermeye yardımcı olur. İşte değerlendirilmesi gereken ana kriterler:

Entegrasyon Karmaşıklığı: Kütüphanenin mevcut .NET projelerinizle ne kadar kolay entegre olduğu, örneğin basit kurulum için NuGet paket Yöneticisi'ni kullanma ve API entegrasyon sekmesi kurulumunu içerir. Kod Basitliği: Kaynak kodunu yazma ve bakımını yapma kolaylığı, HTML dizgilerini veya tüm web sayfalarını oluşturulan PDF belgelerine dönüştürmek için sadece birkaç satır gibi minimal kod örneklerini içerir. Renderleme Doğruluğu: Renderleme motorunun, HTML kodunu, JavaScript yürütmesini, print CSS'yi, HTML formlarını ve diğer dinamik içeriği doğru bir şekilde işleyebilme becerisidir ve yüksek kaliteli PDF'ler üretir. Ölçek Üzerinde Performans: PDF dönüştürücüsünün, birden çok HTML sayfasından veya dinamik içerikten PDF dosyaları oluştururken ağır yük altında ne kadar iyi performans gösterdiği. Lisanslama ve Maliyet Etkinliği: Ticari lisans gibi fiyatlandırma modelleri ve projenizin bütçesine uygunluğu.

Bu faktörleri değerlendiren geliştiriciler, ister Visual Studio'daki .NET Core ister .NET Framework projeleriyle çalışsınlar, hem teknik gereksinimlere hem de finansal kısıtlamalara uyan bir araç seçebilirler.

IronPDF: HTML'den PDF'ye Dönüştürme

 C#'da .NET Geliştiricileri için HTML'den PDF'ye (Nihai Kılavuz): Şekil 1

IronPDF, özellikle geliştiriciler için tasarlanmış tam özellikli bir .NET kütüphanesidir. Kutudan çıktığı haliyle HTML'yi dönüştürme yöntemleri için minimal kurulum ile PDF'lere dönüştürmek üzere HTML dizelerini, yerel dosyaları ve canlı URL'leri sağlar. Chrome tabanlı işleme motoru, CSS ve JavaScript desteği dahil yüksek doğruluğu garanti eder. IronPDF ticari bir üründür ancak güçlü destek ve basit bir API sunar.

HTML Dizesi için PDF

IronPDF ile bir dizgiden PDF'e HTML dönüştürmek basittir. Bu yaklaşım, dinamik içerik oluşturma veya küçük HTML parçacıkları için idealdir.

Örnek:

using IronPdf;
class Program
{
    static void Main(string[] args)
    {
        var renderer = new ChromePdfRenderer();
        var pdf = renderer.RenderHtmlAsPdf("<h1>Hello, World!</h1>");
        pdf.SaveAs("output.pdf");
    }
}
using IronPdf;
class Program
{
    static void Main(string[] args)
    {
        var renderer = new ChromePdfRenderer();
        var pdf = renderer.RenderHtmlAsPdf("<h1>Hello, World!</h1>");
        pdf.SaveAs("output.pdf");
    }
}
Imports IronPdf

Class Program
    Shared Sub Main(args As String())
        Dim renderer = New ChromePdfRenderer()
        Dim pdf = renderer.RenderHtmlAsPdf("<h1>Hello, World!</h1>")
        pdf.SaveAs("output.pdf")
    End Sub
End Class
$vbLabelText   $csharpLabel

Oluşturulan PDF Dokümanı

 C#'da .NET Geliştiricileri için HTML'den PDF'ye (Nihai Kılavuz): Şekil 2

Açıklama:

  1. ChromePdfRenderer: ChromePdfRenderer sınıfı, IronPDF'de HTML'yi PDF'ye dönüştürmek için ana araçtır. Çoğu kullanım durumunu minimum kurulumla ele almak üzere önceden yapılandırılmış olarak gelir.
  2. RenderHtmlAsPdf: Bu yöntem, bir HTML dizesini girdi olarak alır ve bir PDF belgesi oluşturur.
  3. SaveAs: Oluşturulan PDF belirtilen yola kaydedilir (output.pdf).

Yerel HTML Dosyasını PDF'ye Dönüştürme

Harici kaynaklar (CSS veya JavaScript gibi) içeren bir yerel HTML dosyasını dönüştürmesi gereken uygulamalar için IronPDF bunu kolaylaştırır.

Örnek:

using IronPdf;
class Program
{
    static void Main(string[] args)
    {
        var renderer = new ChromePdfRenderer();
        PdfDocument pdf = renderer.RenderHtmlFileAsPdf("template.html");
        pdf.SaveAs("report.pdf");
    }
}
using IronPdf;
class Program
{
    static void Main(string[] args)
    {
        var renderer = new ChromePdfRenderer();
        PdfDocument pdf = renderer.RenderHtmlFileAsPdf("template.html");
        pdf.SaveAs("report.pdf");
    }
}
Imports IronPdf
Friend Class Program
	Shared Sub Main(ByVal args() As String)
		Dim renderer = New ChromePdfRenderer()
		Dim pdf As PdfDocument = renderer.RenderHtmlFileAsPdf("template.html")
		pdf.SaveAs("report.pdf")
	End Sub
End Class
$vbLabelText   $csharpLabel

HTML Dosyasını Girdi Olarak Kullanma

 C#'da .NET Geliştiricileri için HTML'den PDF'ye (Nihai Kılavuz): Şekil 3

Çıktı

 C#'da .NET Geliştiricileri için HTML'den PDF'ye (Nihai Kılavuz): Şekil 4

Açıklama:

RenderHtmlFileAsPdf: Yerel bir HTML dosyasını alır ve PDF'ye dönüştürür. Bağlantılı kaynakları otomatik olarak işler, örneğin harici CSS ve JavaScript dosyalarını.

URL'den PDF'e

IronPDF, JavaScript kullanan sayfalar da dahil olmak üzere, URL'lerden dinamik web içeriği dönüştürmede özellikle güçlüdür.

Örnek:

using IronPdf;
class Program
{
    static void Main(string[] args)
    {
        var renderer = new ChromePdfRenderer();
        renderer.RenderingOptions.EnableJavaScript = true;
        renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print;
        renderer.RenderingOptions.WaitFor.RenderDelay(3000); // Wait up to 3 seconds for JS to load

        PdfDocument pdf = renderer.RenderUrlAsPdf("https://apple.com");
        pdf.SaveAs("url-to-pdf.pdf");
    }
}
using IronPdf;
class Program
{
    static void Main(string[] args)
    {
        var renderer = new ChromePdfRenderer();
        renderer.RenderingOptions.EnableJavaScript = true;
        renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print;
        renderer.RenderingOptions.WaitFor.RenderDelay(3000); // Wait up to 3 seconds for JS to load

        PdfDocument pdf = renderer.RenderUrlAsPdf("https://apple.com");
        pdf.SaveAs("url-to-pdf.pdf");
    }
}
Imports IronPdf

Class Program
    Shared Sub Main(args As String())
        Dim renderer = New ChromePdfRenderer()
        renderer.RenderingOptions.EnableJavaScript = True
        renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print
        renderer.RenderingOptions.WaitFor.RenderDelay(3000) ' Wait up to 3 seconds for JS to load

        Dim pdf As PdfDocument = renderer.RenderUrlAsPdf("https://apple.com")
        pdf.SaveAs("url-to-pdf.pdf")
    End Sub
End Class
$vbLabelText   $csharpLabel

Çıktı

 C#'da .NET Geliştiricileri için HTML'den PDF'ye (Nihai Kılavuz): Şekil 5

Açıklama:

RenderUrlAsPdf: URL içeriğini, JavaScript ile oluşturulmuş unsurlar dahil, alır ve PDF'e dönüştürür.

Karar / Ne Zaman Kullanılmalı

IronPDF, kolay API entegrasyonu, minimal kod ve PDF belgelerini manipüle etme desteği, dinamik belgeler oluşturma, HTML formları, özel başlıklar ve web içeriği için yazdırılabilir versiyonlar gibi özellikleri ihtiyaç duyan geliştiriciler için mükemmeldir. Visual Studio'da .NET Core veya .NET Framework projeleri için idealdir.

Aspose: HTML'den PDF'ye Dönüştürme

 C#'da .NET Geliştiricileri için HTML'den PDF'ye (Nihai Kılavuz): Şekil 6

Aspose.PDF, HTML'yi PDF'ye dönüştürme desteği ile PDF düzenleme için güçlü başka bir kütüphanedir. Aspose'un her dönüşüm senaryosunu nasıl ele aldığını görelim:

HTML Dizgisini PDF'e Dönüştürme

Aspose, HTML dizelerini IronPDF'e kıyasla dönüştürme aşamasında biraz daha fazla kurulum gerektirir.

Örnek:

using Aspose.Html;
using Aspose.Html.Saving;

Document doc = new Document();
Page page = doc.getPages().Add();
HtmlFragment htmlFragment = new HtmlFragment("<h1>HTML String</h1>");
page.getParagraphs().Add(htmlFragment);
doc.Save("HTMLStringUsingDOM.pdf");
using Aspose.Html;
using Aspose.Html.Saving;

Document doc = new Document();
Page page = doc.getPages().Add();
HtmlFragment htmlFragment = new HtmlFragment("<h1>HTML String</h1>");
page.getParagraphs().Add(htmlFragment);
doc.Save("HTMLStringUsingDOM.pdf");
Imports Aspose.Html
Imports Aspose.Html.Saving

Private doc As New Document()
Private page As Page = doc.getPages().Add()
Private htmlFragment As New HtmlFragment("<h1>HTML String</h1>")
page.getParagraphs().Add(htmlFragment)
doc.Save("HTMLStringUsingDOM.pdf")
$vbLabelText   $csharpLabel

Çıktı

 C#'da .NET Geliştiricileri için HTML'den PDF'ye (Nihai Kılavuz): Şekil 7

Açıklama:

Document doc: Dönüştürülen HTML dizesini kaydetmek için yeni bir belge oluşturur. Sayfa sayfa: Bu satır, oluşturduğumuz boş belgeye yeni bir sayfa ekler. HtmlFragment htmlFragment: Dönüştürdüğümüz HTML dizesidir. page.getParagraphs().Add(htmlFragment): HTML'i belgeye ekleyin. doc.Save: HTML içeriğiyle belgeyi bir PDF belgesi olarak kaydeder.

Yerel HTML Dosyasını PDF'e Dönüştürme

Aspose, yerel HTML dosyalarını PDF'lere dönüştürmek için de kullanılabilir, ancak bu işlem IronPDF'e göre daha fazla yapılandırma gerektirir.

Örnek:

using Aspose.Html;
using Aspose.Html.Converters;
using Aspose.Html.Saving;

var document = new HTMLDocument("document.html");
var options = new PdfSaveOptions();
Converter.ConvertHTML(document, options, "output.pdf");
using Aspose.Html;
using Aspose.Html.Converters;
using Aspose.Html.Saving;

var document = new HTMLDocument("document.html");
var options = new PdfSaveOptions();
Converter.ConvertHTML(document, options, "output.pdf");
Imports Aspose.Html
Imports Aspose.Html.Converters
Imports Aspose.Html.Saving

Private document = New HTMLDocument("document.html")
Private options = New PdfSaveOptions()
Converter.ConvertHTML(document, options, "output.pdf")
$vbLabelText   $csharpLabel

Giriş HTML:

 C#'da .NET Geliştiricileri için HTML'den PDF'ye (Nihai Kılavuz): Şekil 8

Çıktı:

 C#'da .NET Geliştiricileri için HTML'den PDF'ye (Nihai Kılavuz): Şekil 9

Açıklama:

var document = new HTMLDocument("document.html"): HTML dosyasını yükler. var options: Yeni bir PdfSaveOptions nesnesi oluşturur. Converter.ConvertHTML(): HTML'yi PDF'ye dönüştürür.

URL'den PDF'e

Aspose, URL'ler için benzer işlevsellik sağlar ancak ek kurulum gerektirir.

Örnek:

using System.IO;
using System;
using System.Net.Http;
using Aspose.Pdf;

HttpClient client = new HttpClient();
HttpResponseMessage response = await client.GetAsync("https://www.apple.com");
response.EnsureSuccessStatusCode();
string responseFromServer = await response.Content.ReadAsStringAsync();
MemoryStream stream = new MemoryStream(System.Text.Encoding.UTF8.GetBytes(responseFromServer));
HtmlLoadOptions options = new HtmlLoadOptions("https://www.apple.com");
Document pdfDocument = new Document(stream, options);
pdfDocument.Save("WebPageToPDF_out.pdf");
using System.IO;
using System;
using System.Net.Http;
using Aspose.Pdf;

HttpClient client = new HttpClient();
HttpResponseMessage response = await client.GetAsync("https://www.apple.com");
response.EnsureSuccessStatusCode();
string responseFromServer = await response.Content.ReadAsStringAsync();
MemoryStream stream = new MemoryStream(System.Text.Encoding.UTF8.GetBytes(responseFromServer));
HtmlLoadOptions options = new HtmlLoadOptions("https://www.apple.com");
Document pdfDocument = new Document(stream, options);
pdfDocument.Save("WebPageToPDF_out.pdf");
Imports System.IO
Imports System
Imports System.Net.Http
Imports Aspose.Pdf

Dim client As New HttpClient()
Dim response As HttpResponseMessage = Await client.GetAsync("https://www.apple.com")
response.EnsureSuccessStatusCode()
Dim responseFromServer As String = Await response.Content.ReadAsStringAsync()
Dim stream As New MemoryStream(System.Text.Encoding.UTF8.GetBytes(responseFromServer))
Dim options As New HtmlLoadOptions("https://www.apple.com")
Dim pdfDocument As New Document(stream, options)
pdfDocument.Save("WebPageToPDF_out.pdf")
$vbLabelText   $csharpLabel

Çıktı

 C#'da .NET Geliştiricileri için HTML'den PDF'ye (Nihai Kılavuz): Şekil 10

Açıklama:

  • dataDir değişkeni, oluşturulan PDF'nin kaydedileceği dizini tutar.
  • Wikipedia ana sayfa URL'sine erişmek için bir WebRequest oluşturulur ve istek için varsayılan kimlik bilgileri kullanılır.
  • GetResponse() yöntemi, isteği gönderir ve yanıtı bir HttpWebResponse olarak alır.
  • Yanıttan bir akış elde edilir ve bir StreamReader, sayfanın tüm HTML içeriğini responseFromServer dizgesine okur.
  • responseFromServer'den HTML içeriği bir bayt dizisine dönüştürülür ve ardından bir MemoryStream'a yüklenir.
  • HtmlLoadOptions, görece bağlantılar için temel URL'yi ve diğer ayarları belirtmek için kullanılır.
  • Bellek akışındaki HTML'yi içeren bir Aspose.Pdf.Document oluşturulur ve belge belirtilen dizine PDF olarak kaydedilir.

Karar / Ne Zaman Kullanılır

Aspose.PDF, gelişmiş PDF manipülasyonu ve dönüştürme gerektiren kurumsal projeler için en iyisidir. Güçlüdür ancak hızlı HTML- PDF dönüşümleri için daha az optimize edilmiştir.

iText 9: HTML'den PDF'ye Dönüştürme

 C#'da .NET Geliştiricileri için HTML'den PDF'ye (Nihai Kılavuz): Şekil 11

iText 9, .NET uygulamaları için PDF belgeleri oluşturma ve işleme konusunda geliştirilmiş özellikler sunan iText PDF kütüphanesinin en son sürümüdür. Daha akıcı ve genişletilebilir bir API sunuyor, performansı artırıyor ve modern PDF standartlarına daha iyi destek sağlıyor.

HTML Dizgisini PDF'e Dönüştürme

iText 9 kullanarak bir HTML dizesini bir PDF belgesine dönüştürmenin temel bir örneği.

Örnek:

using iText.Html2pdf;
using System.IO;

class Program
{
    static void Main()
    {
        string html = "<h1>Hello World</h1><p>This is a simple PDF generated from HTML.</p>";
        string outputFile = "SimpleHtmlToPdf.pdf";

        using (var pdfStream = new FileStream(outputFile, FileMode.Create))
        {
            HtmlConverter.ConvertToPdf(html, pdfStream);
        }

        System.Console.WriteLine("PDF generated: " + outputFile);
    }
}
using iText.Html2pdf;
using System.IO;

class Program
{
    static void Main()
    {
        string html = "<h1>Hello World</h1><p>This is a simple PDF generated from HTML.</p>";
        string outputFile = "SimpleHtmlToPdf.pdf";

        using (var pdfStream = new FileStream(outputFile, FileMode.Create))
        {
            HtmlConverter.ConvertToPdf(html, pdfStream);
        }

        System.Console.WriteLine("PDF generated: " + outputFile);
    }
}
Imports iText.Html2pdf
Imports System.IO

Class Program
    Shared Sub Main()
        Dim html As String = "<h1>Hello World</h1><p>This is a simple PDF generated from HTML.</p>"
        Dim outputFile As String = "SimpleHtmlToPdf.pdf"

        Using pdfStream As New FileStream(outputFile, FileMode.Create)
            HtmlConverter.ConvertToPdf(html, pdfStream)
        End Using

        System.Console.WriteLine("PDF generated: " & outputFile)
    End Sub
End Class
$vbLabelText   $csharpLabel

Çıktı

 C#'da .NET Geliştiricileri için HTML'den PDF'ye (Nihai Kılavuz): Şekil 12

Yerel HTML Dosyasını PDF'e Dönüştürme

iText 9, HtmlConverter.ConvertToPdf sınıfını kullanarak HTML dosya türlerini PDF'ye dönüştürebilir.

Örnek:

using iText.Html2pdf;
using System.IO;

class Program
{
    static void Main()
    {
        string htmlFile = "document.html";
        string outputPdf = "html-file-to-pdf.pdf";

        // Read HTML content from file
        string htmlContent = File.ReadAllText(htmlFile);

        // Convert HTML string to PDF
        HtmlConverter.ConvertToPdf(htmlContent, new FileStream(outputPdf, FileMode.Create));

        System.Console.WriteLine("PDF generated: " + outputPdf);
    }
}
using iText.Html2pdf;
using System.IO;

class Program
{
    static void Main()
    {
        string htmlFile = "document.html";
        string outputPdf = "html-file-to-pdf.pdf";

        // Read HTML content from file
        string htmlContent = File.ReadAllText(htmlFile);

        // Convert HTML string to PDF
        HtmlConverter.ConvertToPdf(htmlContent, new FileStream(outputPdf, FileMode.Create));

        System.Console.WriteLine("PDF generated: " + outputPdf);
    }
}
Imports iText.Html2pdf
Imports System.IO

Module Program
    Sub Main()
        Dim htmlFile As String = "document.html"
        Dim outputPdf As String = "html-file-to-pdf.pdf"

        ' Read HTML content from file
        Dim htmlContent As String = File.ReadAllText(htmlFile)

        ' Convert HTML string to PDF
        HtmlConverter.ConvertToPdf(htmlContent, New FileStream(outputPdf, FileMode.Create))

        System.Console.WriteLine("PDF generated: " & outputPdf)
    End Sub
End Module
$vbLabelText   $csharpLabel

Çıktı

 C#'da .NET Geliştiricileri için HTML'den PDF'ye (Nihai Kılavuz): Şekil 13

Açıklama:

  • HtmlConverter: Bir HTML dosyasını doğrudan PDF'ye dönüştürür.

URL'den PDF'e

iText ayrıca URL'lerden içerik dönüştürmeyi destekler.

Örnek:

using iText.Html2pdf;
using System;
using System.IO;
using System.Net.Http;
using System.Threading.Tasks;

class Program
{
    static async Task Main()
    {
        string url = "https://apple.com";
        string outputPdf = "url-to-pdf.pdf";

        using var httpClient = new HttpClient();
        // Fetch the HTML content from the URL
        string htmlContent = await httpClient.GetStringAsync(url);

        // Convert HTML content to PDF
        HtmlConverter.ConvertToPdf(htmlContent, new FileStream(outputPdf, FileMode.Create));

        Console.WriteLine("PDF generated: " + outputPdf);
    }
}
using iText.Html2pdf;
using System;
using System.IO;
using System.Net.Http;
using System.Threading.Tasks;

class Program
{
    static async Task Main()
    {
        string url = "https://apple.com";
        string outputPdf = "url-to-pdf.pdf";

        using var httpClient = new HttpClient();
        // Fetch the HTML content from the URL
        string htmlContent = await httpClient.GetStringAsync(url);

        // Convert HTML content to PDF
        HtmlConverter.ConvertToPdf(htmlContent, new FileStream(outputPdf, FileMode.Create));

        Console.WriteLine("PDF generated: " + outputPdf);
    }
}
Imports iText.Html2pdf
Imports System
Imports System.IO
Imports System.Net.Http
Imports System.Threading.Tasks

Module Program
    Async Function Main() As Task
        Dim url As String = "https://apple.com"
        Dim outputPdf As String = "url-to-pdf.pdf"

        Using httpClient As New HttpClient()
            ' Fetch the HTML content from the URL
            Dim htmlContent As String = Await httpClient.GetStringAsync(url)

            ' Convert HTML content to PDF
            HtmlConverter.ConvertToPdf(htmlContent, New FileStream(outputPdf, FileMode.Create))

            Console.WriteLine("PDF generated: " & outputPdf)
        End Using
    End Function
End Module
$vbLabelText   $csharpLabel

Çıktı

 C#'da .NET Geliştiricileri için HTML'den PDF'ye (Nihai Kılavuz): Şekil 14

Açıklama: HttpClient.GetStringAsync(url): URL'den gerçek HTML içeriğini indirir. HtmlConverter.ConvertToPdf(htmlContent, …): Alınan HTML dizisini işlenmiş bir PDF'ye dönüştürür.

Karar / Ne Zaman Kullanılır

iText 9, PDF oluşturma, manipülasyon ve HTML'den PDF'ye dönüştürme işlemleri için sağlam, kurumsal düzeyde bir çözüme ihtiyaç duyan geliştiriciler için uygundur. PDF oluşturma üzerinde hassas kontrol gerektirdiğinizde, mevcut iText iş akışları ile entegrasyon için veya dijital imzalar ve formlar gibi gelişmiş PDF özellikleri ihtiyacınız olduğunda iyi çalışır. Ancak, basit HTML'den PDF'e dönüştürme görevleri için, iText 9, IronPDF gibi yalınlaştırılmış kütüphanelere göre daha ağır ve daha karmaşıktır.

wkhtmltopdf: HTML'den PDF'ye Dönüşüm

 C#'da .NET Geliştiricileri için HTML'den PDF'ye (Nihai Kılavuz): Şekil 15

Arşiv ve Bakım Durumu

wkhtmltopdf'nin artık aktif olarak bakımının yapılmadığını not etmek önemlidir. GitHub deposu, Ocak 2023'te resmi olarak arşivlendi ve yalnızca-okunur olarak işaretlendi, bu da gelecekte hiçbir güncelleme, hata düzeltmesi veya güvenlik yamasının uygulanmadığı anlamına gelir.

Geliştiriciler için etki: wkhtmltopdf, çok temel kullanım durumları için hala etkili olabilse de, bakımsız durumu ve eski render motoru, özellikle üretim ortamları veya dinamik veya harici HTML içeriğini işleyen uygulamalar için riskli bir tercih haline getirmektedir.

wkhtmltopdf, Webkit render kullanarak HTML dosyalarını PDF'ye dönüştüren bir komut satırı aracıdır. İşte farklı senaryolar için nasıl çalıştığı:

HTML Dizgisini PDF'e Dönüştürme

wkhtmltopdf, HTML dizelerini önce bir dosyaya yazarak dönüştürülmesini gerektirir.

Örnek:

using System;
using System.IO;
using System.Diagnostics;
class Program
{
    static void Main(string[] args)
    {
        // HTML string to be converted to PDF
        string html = "<html><body><h1>Hello, World!</h1></body></html>";
        // Write HTML string to temporary file
        string tempHtmlFile = Path.Combine(Path.GetTempPath(), "temp.html");
        File.WriteAllText(tempHtmlFile, html);
        // Set output PDF path
        string outputPdfFile = Path.Combine(Path.GetTempPath(), "html-string-to-pdf.pdf");
        // Execute wkhtmltopdf command
        Process process = new Process();
        process.StartInfo.FileName = "wkhtmltopdf";
        process.StartInfo.Arguments = $"\"{tempHtmlFile}\" \"{outputPdfFile}\"";
        process.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
        process.Start();
        process.WaitForExit();
        // Clean up the temporary HTML file
        File.Delete(tempHtmlFile);
        Console.WriteLine($"PDF saved to: {outputPdfFile}");
    }
}
using System;
using System.IO;
using System.Diagnostics;
class Program
{
    static void Main(string[] args)
    {
        // HTML string to be converted to PDF
        string html = "<html><body><h1>Hello, World!</h1></body></html>";
        // Write HTML string to temporary file
        string tempHtmlFile = Path.Combine(Path.GetTempPath(), "temp.html");
        File.WriteAllText(tempHtmlFile, html);
        // Set output PDF path
        string outputPdfFile = Path.Combine(Path.GetTempPath(), "html-string-to-pdf.pdf");
        // Execute wkhtmltopdf command
        Process process = new Process();
        process.StartInfo.FileName = "wkhtmltopdf";
        process.StartInfo.Arguments = $"\"{tempHtmlFile}\" \"{outputPdfFile}\"";
        process.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
        process.Start();
        process.WaitForExit();
        // Clean up the temporary HTML file
        File.Delete(tempHtmlFile);
        Console.WriteLine($"PDF saved to: {outputPdfFile}");
    }
}
Imports System
Imports System.IO
Imports System.Diagnostics
Friend Class Program
	Shared Sub Main(ByVal args() As String)
		' HTML string to be converted to PDF
		Dim html As String = "<html><body><h1>Hello, World!</h1></body></html>"
		' Write HTML string to temporary file
		Dim tempHtmlFile As String = Path.Combine(Path.GetTempPath(), "temp.html")
		File.WriteAllText(tempHtmlFile, html)
		' Set output PDF path
		Dim outputPdfFile As String = Path.Combine(Path.GetTempPath(), "html-string-to-pdf.pdf")
		' Execute wkhtmltopdf command
		Dim process As New Process()
		process.StartInfo.FileName = "wkhtmltopdf"
		process.StartInfo.Arguments = $"""{tempHtmlFile}"" ""{outputPdfFile}"""
		process.StartInfo.WindowStyle = ProcessWindowStyle.Hidden
		process.Start()
		process.WaitForExit()
		' Clean up the temporary HTML file
		File.Delete(tempHtmlFile)
		Console.WriteLine($"PDF saved to: {outputPdfFile}")
	End Sub
End Class
$vbLabelText   $csharpLabel

Çıktı

 C#'da .NET Geliştiricileri için HTML'den PDF'ye (Nihai Kılavuz): Şekil 16

Açıklama:

  • wkhtmltopdf, bir giriş dosyası gerektirir, bu yüzden öncelikle HTML dizelerini geçici bir dosyaya (temp.html) yazarız.
  • Daha sonra Process sınıfını kullanarak geçici HTML dosyası ve istenen çıktı PDF yolu argümanlarıyla wkhtmltopdf komutunu çalıştırırız.
  • Çevrimden sonra, temizlemek için geçici HTML dosyasını sileriz.

Yerel HTML Dosyasını PDF'e Dönüştürme

wkhtmltopdf kullanarak yerel bir HTML dosyasını PDF'ye dönüştürmek için, doğrudan HTML dosyasının dosya yolunu gösterebilirsiniz.

Örnek:

using System;
using System.Diagnostics;

class Program
{
    static void Main(string[] args)
    {
        // Path to the local HTML file
        string htmlFilePath = @"C:\path\to\your\document.html";
        // Path for the output PDF file
        string outputPdfFile = @"C:\path\to\output\html-file-to-pdf.pdf";
        // Execute wkhtmltopdf command
        Process process = new Process();
        process.StartInfo.FileName = "wkhtmltopdf";
        process.StartInfo.Arguments = $"\"{htmlFilePath}\" \"{outputPdfFile}\"";
        process.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
        process.Start();
        process.WaitForExit();
        Console.WriteLine($"PDF saved to: {outputPdfFile}");
    }
}
using System;
using System.Diagnostics;

class Program
{
    static void Main(string[] args)
    {
        // Path to the local HTML file
        string htmlFilePath = @"C:\path\to\your\document.html";
        // Path for the output PDF file
        string outputPdfFile = @"C:\path\to\output\html-file-to-pdf.pdf";
        // Execute wkhtmltopdf command
        Process process = new Process();
        process.StartInfo.FileName = "wkhtmltopdf";
        process.StartInfo.Arguments = $"\"{htmlFilePath}\" \"{outputPdfFile}\"";
        process.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
        process.Start();
        process.WaitForExit();
        Console.WriteLine($"PDF saved to: {outputPdfFile}");
    }
}
Imports System
Imports System.Diagnostics

Module Program
    Sub Main(args As String())
        ' Path to the local HTML file
        Dim htmlFilePath As String = "C:\path\to\your\document.html"
        ' Path for the output PDF file
        Dim outputPdfFile As String = "C:\path\to\output\html-file-to-pdf.pdf"
        ' Execute wkhtmltopdf command
        Dim process As New Process()
        process.StartInfo.FileName = "wkhtmltopdf"
        process.StartInfo.Arguments = $"""{htmlFilePath}"" ""{outputPdfFile}"""
        process.StartInfo.WindowStyle = ProcessWindowStyle.Hidden
        process.Start()
        process.WaitForExit()
        Console.WriteLine($"PDF saved to: {outputPdfFile}")
    End Sub
End Module
$vbLabelText   $csharpLabel

Çıktı

 C#'da .NET Geliştiricileri için HTML'den PDF'ye (Nihai Kılavuz): Şekil 17

Açıklama:

  • Bu örnek, yerel HTML dosyasının (template.html) yolunu ve PDF için çıkış yolunu basitçe sağlar.
  • wkhtmltopdf yerel dosyaları doğrudan işler, bu işlemi basit hale getirir.

URL'den PDF'e

Bir URL'yi PDF'ye dönüştürmek, wkhtmltopdf ile kolaydır. Sadece URL'yi doğrudan komuta geçirin.

Örnek:

using System;
using System.Diagnostics;

class Program
{
    static void Main(string[] args)
    {
        // URL to be converted to PDF
        string url = "https://apple.com";
        // Path for the output PDF file
        string outputPdfFile = @"C:\path\to\output\url-to-pdf.pdf";
        // Execute wkhtmltopdf command
        Process process = new Process();
        process.StartInfo.FileName = "wkhtmltopdf";
        process.StartInfo.Arguments = $"\"{url}\" \"{outputPdfFile}\"";
        process.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
        process.Start();
        process.WaitForExit();
        Console.WriteLine($"PDF saved to: {outputPdfFile}");
    }
}
using System;
using System.Diagnostics;

class Program
{
    static void Main(string[] args)
    {
        // URL to be converted to PDF
        string url = "https://apple.com";
        // Path for the output PDF file
        string outputPdfFile = @"C:\path\to\output\url-to-pdf.pdf";
        // Execute wkhtmltopdf command
        Process process = new Process();
        process.StartInfo.FileName = "wkhtmltopdf";
        process.StartInfo.Arguments = $"\"{url}\" \"{outputPdfFile}\"";
        process.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
        process.Start();
        process.WaitForExit();
        Console.WriteLine($"PDF saved to: {outputPdfFile}");
    }
}
Imports System
Imports System.Diagnostics

Module Program
    Sub Main(args As String())
        ' URL to be converted to PDF
        Dim url As String = "https://apple.com"
        ' Path for the output PDF file
        Dim outputPdfFile As String = "C:\path\to\output\url-to-pdf.pdf"
        ' Execute wkhtmltopdf command
        Dim process As New Process()
        process.StartInfo.FileName = "wkhtmltopdf"
        process.StartInfo.Arguments = $"""{url}"" ""{outputPdfFile}"""
        process.StartInfo.WindowStyle = ProcessWindowStyle.Hidden
        process.Start()
        process.WaitForExit()
        Console.WriteLine($"PDF saved to: {outputPdfFile}")
    End Sub
End Module
$vbLabelText   $csharpLabel

Çıktı

 C#'da .NET Geliştiricileri için HTML'den PDF'ye (Nihai Kılavuz): Şekil 18

Açıklama:

  • Bu örnekte, wkhtmltopdf doğrudan URL'leri girdi olarak kabul eder.
  • URL, wkhtmltopdf'a bir argüman olarak aktarılır ve çıktı belirtilen yola PDF olarak kaydedilir.

PuppeteerSharp: HTML'den PDF'ye Dönüştürme

 C#'da .NET Geliştiricileri için HTML'den PDF'ye (Nihai Kılavuz): Şekil 19

PuppeteerSharp, Google'ın Puppeteer için bir .NET sarıcısıdır ve Headless Chrome/Chromium üzerinde kontrol sağlar. JavaScript ağırlıklı, dinamik sayfaları render etmede mükemmeldir ancak bir Chromium örneği indirip yönetmek gerekli, bu da ek yük ekler. Apache 2.0 altında açık kaynaklıdır.

HTML Dizgisini PDF'e Dönüştürme

Puppeteer, tam sayfalar render etmek için tasarlanmıştır, bu yüzden bir HTML dizisini dönüştürmek bir dosyaya yazmayı veya doğrudan bir tarayıcıda render etmeyi gerektirir.

Örnek:

using PuppeteerSharp;
using System;
using System.Threading.Tasks;

class Program
{
    static async Task Main(string[] args)
    {
       // Download the browser if necessary
        await new BrowserFetcher().DownloadAsync();
        var browser = await Puppeteer.LaunchAsync(new LaunchOptions { Headless = true });
        var page = await browser.NewPageAsync();
        string htmlContent = "<h1>Hello, World!</h1><p>This is a PDF generated from HTML string.</p>";
        await page.SetContentAsync(htmlContent);
        // Save the page as a PDF
        await page.PdfAsync("html-string-to-pdf.pdf");
        await browser.CloseAsync();
    }
}
using PuppeteerSharp;
using System;
using System.Threading.Tasks;

class Program
{
    static async Task Main(string[] args)
    {
       // Download the browser if necessary
        await new BrowserFetcher().DownloadAsync();
        var browser = await Puppeteer.LaunchAsync(new LaunchOptions { Headless = true });
        var page = await browser.NewPageAsync();
        string htmlContent = "<h1>Hello, World!</h1><p>This is a PDF generated from HTML string.</p>";
        await page.SetContentAsync(htmlContent);
        // Save the page as a PDF
        await page.PdfAsync("html-string-to-pdf.pdf");
        await browser.CloseAsync();
    }
}
Imports PuppeteerSharp
Imports System
Imports System.Threading.Tasks

Module Program
    Async Function Main(args As String()) As Task
        ' Download the browser if necessary
        Await (New BrowserFetcher()).DownloadAsync()
        Dim browser = Await Puppeteer.LaunchAsync(New LaunchOptions With {.Headless = True})
        Dim page = Await browser.NewPageAsync()
        Dim htmlContent As String = "<h1>Hello, World!</h1><p>This is a PDF generated from HTML string.</p>"
        Await page.SetContentAsync(htmlContent)
        ' Save the page as a PDF
        Await page.PdfAsync("html-string-to-pdf.pdf")
        Await browser.CloseAsync()
    End Function
End Module
$vbLabelText   $csharpLabel

Çıktı

 C#'da .NET Geliştiricileri için HTML'den PDF'ye (Nihai Kılavuz): Şekil 20

Açıklama:

  • Puppeteer.LaunchAsync: Başsız modda yeni bir Chromium örneği başlatır.
  • page.SetContentAsync: HTML dizisini tarayıcı sayfasına yükler.
  • page.PdfAsync: Yüklenen HTML'yi PDF'ye dönüştürür ve bir dosyaya kaydeder.

Yerel HTML Dosyasını PDF'e Dönüştürme

PuppeteerSharp kullanarak bir yerel HTML dosyasını PDF'ye dönüştürmek için dosyayı başsız bir tarayıcıya yükleyebilir ve PDF oluşturabilirsiniz.

Örnek:

using PuppeteerSharp;
using System;
using System.Threading.Tasks;

class Program
{
    static async Task Main(string[] args)
    {
        // Download the browser if necessary
        await new BrowserFetcher().DownloadAsync(BrowserFetcher.DefaultRevision);
        var browser = await Puppeteer.LaunchAsync(new LaunchOptions { Headless = true });
        var page = await browser.NewPageAsync();

        // Load the local HTML file
        await page.GoToAsync("file:///path/to/your/template.html");

        // Save the page as a PDF
        await page.PdfAsync("html-file-to-pdf.pdf");
        await browser.CloseAsync();
    }
}
using PuppeteerSharp;
using System;
using System.Threading.Tasks;

class Program
{
    static async Task Main(string[] args)
    {
        // Download the browser if necessary
        await new BrowserFetcher().DownloadAsync(BrowserFetcher.DefaultRevision);
        var browser = await Puppeteer.LaunchAsync(new LaunchOptions { Headless = true });
        var page = await browser.NewPageAsync();

        // Load the local HTML file
        await page.GoToAsync("file:///path/to/your/template.html");

        // Save the page as a PDF
        await page.PdfAsync("html-file-to-pdf.pdf");
        await browser.CloseAsync();
    }
}
Imports PuppeteerSharp
Imports System
Imports System.Threading.Tasks

Friend Class Program
	Shared Async Function Main(ByVal args() As String) As Task
		' Download the browser if necessary
		Await (New BrowserFetcher()).DownloadAsync(BrowserFetcher.DefaultRevision)
		Dim browser = Await Puppeteer.LaunchAsync(New LaunchOptions With {.Headless = True})
		Dim page = Await browser.NewPageAsync()

		' Load the local HTML file
		Await page.GoToAsync("file:///path/to/your/template.html")

		' Save the page as a PDF
		Await page.PdfAsync("html-file-to-pdf.pdf")
		Await browser.CloseAsync()
	End Function
End Class
$vbLabelText   $csharpLabel

Çıktı

 C#'da .NET Geliştiricileri için HTML'den PDF'ye (Nihai Kılavuz): Şekil 21

Açıklama:

  • page.GoToAsync: Yerel HTML dosyasını yükler (doğru [file://]() yolunu kullandığınızdan emin olun).
  • page.PdfAsync: Yerel HTML dosyasının içeriğini PDF'ye dönüştürür.

URL'den PDF'e

Bir URL'yi PDF'ye dönüştürmek, PuppeteerSharp'ın temel özelliklerinden biridir, çünkü JavaScript ile karmaşık sayfaları işleyebilir.

Örnek:

using PuppeteerSharp;
using System;
using System.Threading.Tasks;

class Program
{
    static async Task Main(string[] args)
    {
        // Download the browser if necessary
        await new BrowserFetcher().DownloadAsync(BrowserFetcher.DefaultRevision);
        var browser = await Puppeteer.LaunchAsync(new LaunchOptions { Headless = true });
        var page = await browser.NewPageAsync();

        // Navigate to the URL
        await page.GoToAsync("https://example.com");

        // Save the page as a PDF
        await page.PdfAsync("url-to-pdf.pdf");
        await browser.CloseAsync();
    }
}
using PuppeteerSharp;
using System;
using System.Threading.Tasks;

class Program
{
    static async Task Main(string[] args)
    {
        // Download the browser if necessary
        await new BrowserFetcher().DownloadAsync(BrowserFetcher.DefaultRevision);
        var browser = await Puppeteer.LaunchAsync(new LaunchOptions { Headless = true });
        var page = await browser.NewPageAsync();

        // Navigate to the URL
        await page.GoToAsync("https://example.com");

        // Save the page as a PDF
        await page.PdfAsync("url-to-pdf.pdf");
        await browser.CloseAsync();
    }
}
Imports PuppeteerSharp
Imports System
Imports System.Threading.Tasks

Friend Class Program
	Shared Async Function Main(ByVal args() As String) As Task
		' Download the browser if necessary
		Await (New BrowserFetcher()).DownloadAsync(BrowserFetcher.DefaultRevision)
		Dim browser = Await Puppeteer.LaunchAsync(New LaunchOptions With {.Headless = True})
		Dim page = Await browser.NewPageAsync()

		' Navigate to the URL
		Await page.GoToAsync("https://example.com")

		' Save the page as a PDF
		Await page.PdfAsync("url-to-pdf.pdf")
		Await browser.CloseAsync()
	End Function
End Class
$vbLabelText   $csharpLabel

Çıktı

 C#'da .NET Geliştiricileri için HTML'den PDF'ye (Nihai Kılavuz): Şekil 22

Açıklama:

  • page.GoToAsync: Belirtilen URL'ye gider.
  • page.PdfAsync: URL'deki web sayfasını PDF'ye dönüştürür ve kaydeder.

Karar / Ne Zaman Kullanılmalı

PuppeteerSharp, modern, JavaScript ağırlıklı web uygulamalarının piksel mükemmellikte render edilmesi gerektiğinde idealdir. IronPDF'den daha karmaşıktır ancak dinamik web içeriğini işleme konusunda mükemmeldir.

Neden IronPDF'yi Seçmelisiniz?

IronPDF, kullanım kolaylığı, esnekliği ve .NET uygulamalarıyla sorunsuz entegrasyonu ile öne çıkar. Uygulaması basittir, HTML, CSS ve JavaScript render desteği sunar ve ek kurulum veya dış bağımlılıklar gerektirmez. HTML'den PDF'ye dönüştürmenin ötesinde, IronPDF çeşitli dosya türlerinden PDF belgeleri oluşturma, mevcut PDF belgelerini düzenleme ve ekleme, filigranlama, PDF dosyası güvenliği ve daha fazlası için geniş bir özellik yelpazesi sunar! Bu kütüphaneyi iş başında görmek için, her bir özelliğinin nasıl işlediğini gösteren Kılavuzlara mutlaka göz atın.

Sonuç

C# ile HTML'den PDF dosyalarına dönüştürme söz konusu olduğunda, her biri farklı özellikler ve yetenekler sunan birkaç güçlü araç bulunmaktadır. IronPDF, Aspose, iText 9, wkhtmltopdf ve PuppeteerSharp, HTML içeriğini profesyonel düzeyde PDF belgelerine dönüştürmek için güçlü çözümler sunar. Ancak, projeniz için doğru aracı seçmek, entegrasyon kolaylığı, dinamik içerik desteği, performans ve esneklik gibi faktörlere bağlıdır.

AraçPDF'e HTML DizesiHTML Dosyasından PDF'ePDF için URLAçıklamalar
IronPDF logosu
IronPDF
HTML dizeleri için RenderHtmlAsPdf ile basit. Kullanımı kolay ve .NET uygulamalarıyla sorunsuz bir şekilde entegre olur.RenderHtmlFileAsPdf kullanır, bağlı kaynakları (CSS, JS) otomatik olarak işler.RenderUrlAsPdf kullanır, JavaScript ağırlıklı sayfaları ve dinamik içeriği destekler..NET ile tam entegre, .NET geliştiricileri için idealdir. HTML dizeleri, dosyaları ve URL'leri destekler.
Aspose logosu
Aspose
Daha fazla kurulum gerektirir. HTML dizelerini dönüştürmek için bir Document nesnesinde HtmlFragment kullanır.Yerel HTML dosya dönüştürme için HtmlDocument ve PdfSaveOptions gerektirir. IronPDF'den daha fazla yapılandırma gerektirir.WebRequest kullanarak içerik almak için ek kurulum gerektirir, HtmlLoadOptions ile dönüştürülmeden önce.Çeşitli belge manipülasyonları için sağlamdır, ancak kurulum daha karmaşık olabilir. Daha karmaşık PDF gereksinimleri için iyidir.
iText logosu
iText
HTML dizelerini PDF'ye dönüştürmek için HtmlConverter.ConvertToPdf kullanır.Yerel HTML dosyalarını PDF'ye dönüştürmek için HtmlConverter.ConvertToPdf kullanır.Yerel dosya işleme benzer şekilde, HtmlConverter.ConvertToPdf kullanır.HTML'den PDF'ye dönüşümün ötesinde PDF manipülasyonu üzerinde daha fazla kontrol gerektiren geliştiriciler için harikadır.
wkhtmltopdf logosu
wkhtmltopdf
HTML dizelerini önce bir dosyaya yazarak dönüştürür. Komut satırı aracı kullanarak PDF'ler üretir.Yerel HTML dosyalarını dosya yollarına işaret ederek doğrudan PDF'ye dönüştürür.URL'leri komut satırı aracına geçirerek doğrudan PDF'ye dönüştürür.Öncelikle bir komut satırı aracı, .NET entegrasyonu için ek adımlar gerektirebilir. Basit dönüştürmeler için en iyisi.
PuppeteerSharp logosu
PuppeteerSharp
page.SetContentAsync ile HTML dizisini yükler ve ardından page.PdfAsync ile bir PDF üretir.Bir yerel HTML dosyasını page.GoToAsync ile yükler ve ardından bir PDF'ye dönüştürür.Bir URL'yi yükler ve page.GoToAsync ve page.PdfAsync kullanarak bir PDF'ye dönüştürür.Dinamik sayfalar, özellikle JavaScript ağırlıklı içerik için en uygundur. Chromium'u indirme ve başlatma gerektirir.
  • IronPDF, sadeliği, .NET ile doğrudan entegrasyonu ve karmaşık HTMLyi, JavaScript ile oluşturulmuş sayfalar dahil, işleme kapasitesi ile öne çıkar. Minimal kurulum ile kullanımı kolay bir çözüm arayan geliştiriciler için mükemmeldir.

  • Aspose, kapsamlı PDF manipülasyon özellikleri sunar, ancak HTML'den PDF'ye dönüşüm yetenekleri, özellikle yerel dosyalar ve dış kaynaklar için ek yapılandırma gerektirir.

  • iText 9, PDF belgeleri oluşturmak isteyenler için sağlam bir temel sunar, ancak özellikle dinamik içerik için HTML'den PDF'ye dönüştürme ek kodlama gerektirebilir. Özelleştirilmiş PDF manipülasyonu gereken projeler için harika bir seçenektir.

  • wkhtmltopdf basit HTML'den PDF'ye dönüşüm için ideal bir komut satırı arayüzü sağlar, ancak tam bir .NET kütüphanesinin entegrasyonu ve esnekliği yoktur.

  • PuppeteerSharp, Headless Chrome'u kullanarak, karmaşık, dinamik web sayfalarını işlemek ve özellikle JavaScript ağırlıklı içerikle uğraşırken bunları PDF'lere dönüştürmek için tercih edilen araçtır.

Çoğu .NET geliştiricisi için tek çatı altında, doğru bir çözüm arayışında olanlar için IronPDF bugünden deneyip güçlü özelliklerini kendiniz deneyimlemenizi tavsiye ederiz. Yeni PDF belgeleri üretmekten, mevcut PDF'leri düzenlemeye kadar, IronPDF'in tüm özellik yelpazesini kendiniz keşfedin. Sadece IronPDF'i yükleyin ve ücretsiz denemeyi kullanarak kendiniz deneyin. Bugün PDF iş akışlarınızı nasıl geliştirebileceğini görün.

Sonuç olarak, doğru araç sizin özel gereksinimlerinize bağlıdır, ancak burada tartışılan seçeneklerle, projeniz için mükemmel çözümü bulmağa iyi bir şekilde donanmışsınızdır.

Lütfen dikkat: Aspose, iText, wkhtmltopdf ve PuppeteerSharp, ilgili sahiplerinin tescilli ticari markalarıdır. Bu site Aspose, iText, wkhtmltopdf veya Puppeteer ile bağlantılı, onaylanmış veya desteklenmiş değildir. Tüm ürün adları, logolar ve markalar, ilgili sahiplerinin mülkiyetindedir. Karşılaştırmalar sadece bilgilendirme amaçlı sağlanmaktadır ve yazıldığı zamandaki herkese açık bilgilere dayanmaktadır.