PDFSharp kullanarak C# (.NET 5) ile PDF nasıl oluşturulur
Video, C# kodu kullanarak bir PDF dosyası oluşturmak için PDFsharp kitaplığını nasıl kullanacağınız konusunda eğitici bir kılavuzdur. Konuşmacı, PDFsharp'ı zor ama etkili bir PDF dosyası oluşturma kütüphanesi olarak tanıtarak başlar. Kitaplık, gelişmiş özelliklere sahiptir ve rakiplerinin birçoğunun aksine tamamen ücretsizdir. Konuşmacı, karmaşıklığına rağmen, PDFsharp'ın C# kullanarak PDF dosyaları oluşturmak için mükemmel bir seçim olduğunu vurgular.
Eğitime başlamak için konuşmacı, üç satır metinden oluşan bir PDF dosyası örneğini sunar. İlk metin satırı tam olarak ilk değilken, üçüncü satır sağ alt köşede görünür. Konuşmacı, metinlerin sırasının kodu incelediklerinde anlam kazanacağını belirtir. .NET 5 kullanarak PDFsharp'ın nasıl çalıştığını göstereceklerini de açıklarlar. C# dilinde sıfırdan PDF oluşturma geniş bir bakış için,IronPDFdaha basitleştirilmiş bir alternatif yaklaşım sunar.
PDFsharp ve IronPDF'in .NET PDF projeleri için en ilgili yetenekler açısından nasıl farklılık gösterdiğine hızlı bir bakış:
| Özellik | IronPDF | PDFSharp |
|---|---|---|
| HTML'den PDF'ye Dönüştürme | Yes | Hayır |
| Dijital İmzalar | Yes | Hayır |
| Şifreleme | Yes | Hayır |
| HTML, CSS ve JavaScript | Yes | Hayır |
| Profesyonel Destek | Yes | Hayır |
| Lisanslama | Ticari | MIT (Açık Kaynak) |
Bu farklılıkların her biri için detaylı açıklamalar ve kod örnekleri aşağıdaki bölümlerde yer almaktadır. Her iki kütüphaneyi de karşılaştıran ekipler, IronPDF'in yeteneklerini 30 günlük ücretsiz deneme ile test edebilirler.
Kurulum ve Ayarlar
Konuşmacı, PDFsharp için ortam kurulumunun oldukça zor olabileceğini vurguluyor. PDFsharp NuGet Paket Detayları ile çalışmadan önce üç NuGet paketinin yüklenmesi gerektiğini açıklıyorlar. İlk paket, eski sürümünden dolayı .NET ile eşleşmeyebilir uyarısı verebilecek olan PDFsharp'ın kendisidir. Diğer iki paket System.Drawing.Common ve System.Text.Encoding.CodePages'dir.

Konuşmacı, PDFsharp ile çalışmaya başlamadan önce tüm üç paketin de yüklenmesi gerektiğini vurguluyor; aksi takdirde kod hata verecektir. System.Text.Encoding.CodePages paketinin, PDF dosyaları oluşturmak için gereken kodlama desteğini sağladığı için özellikle önemli olduğunu açıklıyorlar. Konuşmacı ayrıca, paketlerin doğru şekilde yüklenmemesi durumunun çözümlemesinin zor olabileceğini belirtiyor. Bu çoklu paket kurulumunu tamamen önlemek isteyen ekipler, PDFsharp'tan IronPDF'e adım adım geçiş için PDFsharp'tan IronPDF'e geçiş kılavuzunu takip edebilir.
İlgili Kütüphaneleri Kurma
PDFSharp'ın düzgün çalışması için, konuşmacı System.Text.Encoding için bir sağlayıcının kaydedilmesi gerektiğini açıklıyor. Sağlayıcı System.Text.Encoding.CodePages paketinden gelir ve konuşmacı, PDFsharp'ın doğru çalışmasını sağlamak için paketin kaydedilmesinin önemini vurgular. Sağlayıcının kaydedilmemesinin, çözülmesi zor bir hataya yol açacağını açıklıyorlar.
PDF Dosyası Oluşturma
Daha sonra, konuşmacı PDFsharp kullanarak bir PDF dosyası oluşturan basit bir konsol uygulaması sunar. Kütüphaneyi kullanmadan önce PDFsharp Drawing ve PDFsharp PDF için using ifadelerinin beyan edilmesi gerektiğini açıklar. Konuşmacı daha sonra, yeni bir belge oluşturmayı, yeni bir sayfa eklemeyi ve sayfaya metin çizmeyi içeren PDF dosyası oluşturma kodunu sunuyor.
using PdfSharp.Drawing;
using PdfSharp.Pdf;
namespace PdfSharpExample
{
class Program
{
static void Main(string[] args)
{
// Create a new PDF document
PdfDocument document = new PdfDocument();
// Add a new page
PdfPage page = document.AddPage();
// Prepare to draw on the page
XGraphics gfx = XGraphics.FromPdfPage(page);
// Define a font
XFont font = new XFont("Verdana", 20, XFontStyle.Bold);
// Draw a string to the page
gfx.DrawString("Hello, PDFsharp!", font, XBrushes.Black,
new XRect(0, 0, page.Width, page.Height),
XStringFormats.Center);
// Save the document
const string filename = "HelloWorld.pdf";
document.Save(filename);
}
}
}
using PdfSharp.Drawing;
using PdfSharp.Pdf;
namespace PdfSharpExample
{
class Program
{
static void Main(string[] args)
{
// Create a new PDF document
PdfDocument document = new PdfDocument();
// Add a new page
PdfPage page = document.AddPage();
// Prepare to draw on the page
XGraphics gfx = XGraphics.FromPdfPage(page);
// Define a font
XFont font = new XFont("Verdana", 20, XFontStyle.Bold);
// Draw a string to the page
gfx.DrawString("Hello, PDFsharp!", font, XBrushes.Black,
new XRect(0, 0, page.Width, page.Height),
XStringFormats.Center);
// Save the document
const string filename = "HelloWorld.pdf";
document.Save(filename);
}
}
}
Imports PdfSharp.Drawing
Imports PdfSharp.Pdf
Namespace PdfSharpExample
Friend Class Program
Shared Sub Main(ByVal args() As String)
' Create a new PDF document
Dim document As New PdfDocument()
' Add a new page
Dim page As PdfPage = document.AddPage()
' Prepare to draw on the page
Dim gfx As XGraphics = XGraphics.FromPdfPage(page)
' Define a font
Dim font As New XFont("Verdana", 20, XFontStyle.Bold)
' Draw a string to the page
gfx.DrawString("Hello, PDFsharp!", font, XBrushes.Black, New XRect(0, 0, page.Width, page.Height), XStringFormats.Center)
' Save the document
Const filename As String = "HelloWorld.pdf"
document.Save(filename)
End Sub
End Class
End Namespace
Konuşmacı, PDF dosyası oluşturma kodunun daha karmaşık özellikler eklemek üzere ayarlanabileceğini, örneğin resimler eklemek (IronPDF ile resimlerin PDF'ye nasıl dönüştürüleceğine bakın), tablolar ve grafikler gibi. PDFsharp'ın yazı tipleriyle çalışırken yazı tiplerini PDF dosyasına gömme gibi çeşitli özellikler sağladığını açıklıyorlar.

Konuşmacı, gerekli NuGet paketlerini yükleyerek ve System.Text.Encoding için bir sağlayıcı kaydederek ortamın doğru bir şekilde kurulmasının önemini açıklar. Ayrıca PDFsharp kullanarak bir PDF dosyası oluşturan basit bir konsol uygulaması sunuyor ve kodun daha karmaşık özellikler içerecek şekilde nasıl ayarlanabileceğini gösteriyor. Video, C# ve PDFsharp kullanarak PDF dosyaları oluşturmakla ilgilenenler için mükemmel bir kaynaktır.
Liste ve Daha Karmaşık Öğeler Oluşturma
Videonun ikinci bölümünde, konuşmacı PDF belgeleri oluşturmak için daha karmaşık bir örnek sunmaya başlıyor. Boş bir PDF belgesine sahip olmanın anlamsız olduğunu vurguluyor vePDFSharpkütüphanesini kullanarak yeni bir sayfa nasıl oluşturulacağını açıklamaya başlıyor. Bu sürecin, Excel veya PowerPoint eklentilerinde şeyler oluşturma sürecine benzediğini ve sayfa oluşturulduktan sonra, başka bir yöntemi çağırmayı gerektirmeyen bir referansla çalıştığını belirtiyor.

Konuşmacı daha sonra metin, çizgi ve resim gibi şeyleri çizmeye yönelik yöntemler sağlayan XGraphics değişkenini tanıtır — IronPDF'nin metin ve resim damgalama API'si üzerinden manuel koordinat hesaplaması gerektirmeden bu işlemleri yapar. XFont değişkeni, PDF belgesinde kullanılacak bir yazı tipini ayarlama aracı olarak da tanıtılır. Konuşmacı, yazı tipinin başka bir yerde üretilebileceğini, ancak daha karmaşık bir düzenlemeye sahipseniz, global olarak ayarlamanın yararlı olacağını belirtiyor.
Daha sonra, konuşmacı DrawString yöntemini tartışır, bu yöntem PDF dosyasına metin yazar. Yöntemin karmaşık olan kısmının metnin nereye çizileceğini belirlemek olduğunu ve yazı tipi, renk ve metnin hizalanabileceği sınırları gibi çeşitli parametreleri açıklar. Ayrıca XBrushes değişkeninin metnin rengini ayarlamak için kullanımını açıklar.
DrawString ve Diğer Yöntemlerin Açıklaması
Daha sonra, konuşmacı DrawString yönteminin, metni merkeze hizalama, sol alt köşeye hizalama ve metnin konulacağı tam koordinatları belirleme gibi farklı parametreler ile kullanımına ilişkin birkaç örnek sunar. Son seçeneğin en özelleştirilebilir olduğunu ve büyük bir esneklik sunduğunu belirtiyor.

Konuşmacı, C# programlama dilini kullanarak grafikler yardımıyla nasıl tablo oluşturulacağını açıklıyor. Resimleri, dizeleri ve çizgileri nasıl ekleyebileceğini ve grafik özelliği yardımıyla yay çizme ve barkod çizme işlemlerinin nasıl gerçekleştirileceğini ele alıyorlar;IronPDFbu işlemleri, size kenar boşlukları, başlıklar ve DPI için görüntüleme seçenekleri sunarak basit hale getiriyor. Koordinatlarla çalışırken deneme yanılma yönteminin önemini ve satırları ayırmak için çizgilerin nasıl çizileceğini açıklıyorlar.
Ayrıca tablo başlığını ve değerler ve satır için bir başlangıç noktası ihtiyaçını tartışıyorlar. Y konumunun nasıl ayarlanacağını ve kayıtların nasıl ekleneceğini, tablonun belirli sayıda kaydı aştığında başka bir sayfaya geçiş yapıldığını anlatıyorlar. Sonuç olarak, her sayfa için değerlerin yeniden ayarlanmasının önemini belirtiyorlar.
Hangi Kütüphaneyi Seçmelisiniz?
Sonuç olarak,PDFSharpile çalışırken Microsoft Office eklentilerine aşina olmanın önemini vurguluyor ve konu hakkında kendi kursunu sunuyor. Kütüphanenin oldukça esnek olduğunu ve basit metin belgelerinden daha karmaşık, resimler, grafikler ve özel düzenlerle geniş bir PDF belgesi yelpazesi oluşturmak için kullanılabileceğini belirtiyor.
IronPDFNedir?
IronPDF, PDF belgeleri oluşturmak, düzenlemek ve işlemek için bir C# PDF kütüphanesidir. Tek bir NuGet paketi, Install-Package IronPdf, olarak gönderilir ve ek bağımlılık kurulumu gerektirmeden .NET uygulamalarıyla entegre olur.
PDFsharp, sağlam düşük seviye çizim kontrolü sağlar ve izinli bir MIT lisansı altında dağıtılır — bu iki gerçek güç, onu birçok .NET projesinde temel bir unsur haline getirmiştir. Ekipler genellikle, gereksinimleri koordinat tabanlı renderin ötesine geçip, HTML-PDF dönüşümü, dijital imzalar veya belge şifreleme gibi alanlara kaydığında sürtüşme yaşarlar. IronPDF, bu senaryoları birinci sınıf işlemler olarak ele alan, profesyonel destek ve HTML, CSS ve JavaScript işleme gibi yaygın belge oluşturma iş akışları etrafında tasarlanmış bir API yüzeyi ile ticari olarak desteklenen bir kütüphanedir.
Özellikler
| Özellikler | IronPDF | PDFSharp |
|---|---|---|
| HTML'yi PDF'ye Dönüştürme | Evet | Hayır |
| Profesyonel destek | Evet | Hayır |
| HTML, CSS ve JavaScript Desteği | Evet | Hayır |
| Dijital imzalar | Evet | Hayır |
| Şifreleme | Evet | Hayır |
IronPDF'in temel özelliklerinden biri, HTML'yi PDF'ye dönüştürebilme yeteneğidir. Bu, web sayfalarından PDF belgeleri oluşturmayı kolaylaştırır. HTML-PDF dönüşümü PDFsharp'ın şu anki kapsamı dışındadır — koordinat çizmeyi esas alır — bu nedenle bu yeteneğe ihtiyaç duyan ekipler genellikle ayrı bir görüntüleme kütüphanesi ekler veya IronPDF'in yerleşik Chromium motorunu değerlendirir.
IronPDF aynı zamanda dijital imzalar ve şifreleme ile parolayla koruma için de destek içerir — bu, güvenli bir şekilde elden ele dolaştırılması gereken hassas belgeler için kritiktir. PDFsharp, bu güvenlik senaryolarını ele almak için tasarlanmamıştır, dolayısıyla uyum ya da belge koruma gereksinimleri olan ekipler, bunu genellikle IronPDF'i değerlendirmek için doğal bir dönüm noktası olarak görür.
IronPDF, HTML işleme, şifreleme ve dijital imzaları tek bir NuGet paketinde kapsayan, PDFsharp'a kıyasla daha geniş bir özellik seti ve daha kapsamlı bir destek teklifi sunar. Bununla birlikte, ticari bir üründür, bu yüzden gereksinimleri PDFsharp'ın koordinat çizmeye dayalı modeline uyan ve HTML dönüşümüne ya da yerleşik güvenlik özelliklerine ihtiyaçı olmayan ekipler, PDFsharp'ın MIT lisanslı, açık kaynak yaklaşımını tercih edebilir.
Lisans maliyetinin ötesinde, toplam proje maliyeti, ayrı renderleme kütüphanelerinin birleştirilmesi, karmaşık belgeler için koordinat tabanlı sayfa düzenlerinin yönetilmesi ve PDFsharp'ın gerektirdiği çoklu paket kurulumunun çözümlemesinde harcanan geliştirici saatlerini içerir. Ekibinizin çok yıllık proje yaşam döngüsü boyunca maliyetleri değerlendirmesi gerektiğinde, bu entegrasyon ve bakım maliyetleri genellikle açık kaynak ve ticari lisanslama arasındaki farkı aşmaktadır.
IronPDF'in iş akışınıza nasıl uyduğunu görmeye hazır mısınız? Ücretsiz bir 30 günlük deneme indir ve bu karşılaştırmada ele alınan her özelliği test edin.
PDFsharp, sahibinin tescilli bir markasıdır. Bu site, PDFsharp ile bağlantılı, onaylanmış veya sponsorlu değildir. Tüm ürün adları, logolar ve markalar sahiplerine aittir. Karşılaştırmalar yalnızca bilgilendirme amaçlıdır ve yazım sırasında kamuya açık bilgileri yansıtır.)}]
Sıkça Sorulan Sorular
PDFsharp kullanarak C#'ta bir PDF dosyası nasıl oluşturabilirim?
PDFsharp kullanarak bir PDF oluşturmak için yeni bir PDF belgesi yaratmanız, için bir sayfa eklemeniz ve XGraphics nesnesini kullanarak metin veya grafik çizmeniz gerekir. PdfSharp.Drawing ve PdfSharp.Pdf ad alanları için using deyimlerini eklediğinizden emin olun.
PDFsharp ile çalışmak için gerekli temel NuGet paketleri nelerdir?
PDFsharp ile verimli şekilde çalışmak için PDFsharp, System.Drawing.Common ve System.Text.Encoding.CodePages paketlerini yüklemeniz gerekir. Bu paketler, kodlama desteği ve uygun PDF oluşturma için çok önemlidir.
IronPDF, PDF oluşturma konusunda PDFsharp ile C#'ta nasıl karşılaştırılır?
IronPDF, HTML'den PDF'ye dönüştürme, dijital imzalar ve şifreleme gibi PDFsharp'ta bulunmayan gelişmiş özellikler sunan ticari bir kütüphanedir. Ayrıca daha iyi dökümantasyon ve profesyonel destek sunar, bu da onu karmaşık görevler için daha kullanıcı dostu hale getirir.
PDFsharp kullanımının PDF oluşturma konusundaki sınırlamaları nelerdir?
PDFsharp HTML, CSS veya JavaScript'i desteklemez, bu da kullanım senaryolarını sınırlayabilir. Karmaşık belgeler için kodlama ayarları ve Microsoft Office eklentileri konusunda iyi bir anlayış gerektirir ve bu da IronPDF'ye kıyasla onu daha az sezgisel hale getirebilir.
System.Text.Encoding.CodePages paketi PDFsharp için neden önemlidir?
System.Text.Encoding.CodePages paketi, PDF belgesi oluştururken gereken kodlama desteğini sağlar. Bu paketi doğru bir şekilde yükleyip kaydetmezseniz kodlama ile ilgili hatalarla karşılaşabilirsiniz.
Ücretsiz bir C# kütüphanesi kullanarak HTML'den PDF'ye dönüştürme yapabilir miyim?
Hayır, PDFsharp HTML'den PDF'ye dönüştürmeyi desteklemez. Bu tür bir işlevsellik için IronPDF gibi ticari bir kütüphaneye ihtiyaçınız olacak, bu özellik ve diğer gelişmiş yeteneklerle birlikte gelir.
PDFsharp'ta yaygın hataları nasıl çözebilirim?
PDFsharp'ta yaygın hatalar genellikle NuGet paketlerinin yanlış kurulumu veya kodlama sorunlarından kaynaklanır. System.Text.Encoding.CodePages dahil tüm gerekli paketlerin doğru bir şekilde yüklendiğinden ve kaydedildiğinden emin olun, böylece bu tür sorunları çözebilirsiniz.
C# geliştiricileri için IronPDF'de mevcut olan gelişmiş özellikler nelerdir?
IronPDF, HTML'den PDF'ye dönüştürme, dijital imzalar, şifreleme ve CSS ile JavaScript'i işleme yeteneği gibi gelişmiş özellikler sunar. Ayrıca .NET uygulamalarıyla entegrasyon ve profesyonel destek sağlar, bu da onu geliştiriciler için güçlü bir araç yapar.
PDFsharp kullanarak PDF'de metin düzenini nasıl özelleştirebilirim?
PDFsharp kullanırken, PDF'de metin düzenini XGraphics sınıfının DrawString yöntemi ile özelleştirebilirsiniz. Bu, belirli sınırlar içinde font, renk ve metin hizalaması gibi özellikleri ayarlamanıza olanak tanır.
PDFsharp, C#'ta karmaşık PDF belgeleri oluşturmak için uygun mu?
PDFsharp, karmaşık PDF belgeleri oluşturabilir, ancak bu Microsoft Office eklentileri ve kodlamanın sağlam bir anlayışını gerektirir. IronPDF, daha sezgisel API'si ve ek özellikleri nedeniyle karmaşık görevler için daha iyi bir seçenek olabilir.



