1. Ürün:% s
  2.   PDF
  3.   .NET
  4.   PDFsharp

PDFsharp

 
 

PDF İşleme için Açık Kaynak .NET API

Ücretsiz C# .NET Kitaplığı ile PDF Belgeleri Oluşturun, İşleyin, Dönüştürün ve İşleyin.

PDFsharp nedir?

PDF dosyalarının metin veya meta verilerini oluşturmak, işlemek, birleştirmek, bölmek, değiştirmek, yazdırmak ve çıkarmak için kullanılabilen Açık Kaynak .NET kitaplığı. PDFsharp API, herhangi bir .NET dilinden anında PDF belgeleri oluşturmayı destekler. Ayrıca, XML dosyaları veya doğrudan arabirimler aracılığıyla çeşitli kaynaklardan veri alınmasını da destekler. Sayfa düzeni, metin biçimlendirme ve belge tasarımı için çok sayıda seçeneği destekler.

PDFsharp, GDI+ veya WPF'ye dayalı grafik uygulama sağlar. API, PDF sayfasında, pencerede veya yazıcıda çizim yapmak için tek bir kaynak kodu kullanma özellikleri sağlayarak geliştiricinin işini kolaylaştırır. PDF'yi değiştirme, PDF'leri birleştirme veya bölme, XPS'den PDF'ye dönüştürme, PDF oluşturma, PDF veri çıkarma, Yazı tipi yerleştirme ve alt kümeleme, Unicode desteği ve çok daha fazlası gibi PDF dosyalarını işlemek için birkaç önemli özelliği destekler.

Previous Next

PDFsharp'a Başlarken

PDFsharp, AGPL/Ticari yazılım olarak çift lisanslıdır. AGPL, ücretsiz/açık kaynaklı bir yazılım lisansıdır.

Projenize PDFsharp eklemek için NuGet'i kullanmanız şiddetle tavsiye edilir,

NuGet komutu

 Install-Package PdfSharp

NuGet paketlerine kolayca erişmek için Visual Studio ile NuGet Paket Yöneticisi'ni yükleyebilirsiniz. VS 2012 Express ile olduğu kadar VS 2013 ve VS 2015'in topluluk sürümleriyle de çalışır. Visual Studio'da "Tools" => Henüz sahip değilseniz, NuGet Paket Yöneticisi'ni yüklemek için "Uzantılar ve Güncellemeler...". NuGet Paket Yöneticisi paketi sizin için indirecek, kuracak ve projenize bir referans ekleyecektir.

Ücretsiz .NET API ile PDF Belgeleri Oluşturun ve Değiştirin

Yazılım geliştiriciler, kendi .NET uygulamaları içinde yeni bir PDF belgesi oluşturmak için PDFsharp API'sini kullanabilir. Belge oluşturulduktan sonra boş bir sayfa ekleyebilir, grafik veya metin ekleyebilirsiniz. Ayrıca geliştiricilerin mevcut belgeyi ihtiyaçlarına göre değiştirmelerini ve istedikleri adla kaydetmelerini de kolaylaştırır. Aşağıdaki adımları kullanarak C#'da PDF belgeleri oluşturabilir ve işleyebilirsiniz.

  1. PdfDocument'ı Başlat
  2. Sayfa ekle
  3. Çizim için bir XGraphics nesnesi alın
  4. Yazı tipi oluştur
  5. Yazı ekle
  6. Belgeyi Kaydet

C# kullanarak PDF oluşturun

// Create a new PDF document
PdfDocument pdfDocument = new PdfDocument();
// Create an empty page
PdfPage pdfPage = pdfDocument.AddPage();
// Get an XGraphics object for drawing
XGraphics xGraphics = XGraphics.FromPdfPage(pdfPage);
// Create a font
XFont xFont = new XFont("Verdana", 20, XFontStyle.BoldItalic);
// Draw the text
xGraphics.DrawString("File Format Developer Guide", xFont, XBrushes.Black,
    new XRect(0, 0, pdfPage.Width, pdfPage.Height),
    XStringFormats.Center);
// Save the document...
pdfDocument.Save("fileformat.pdf");
    

.NET API aracılığıyla PDF Ek Açıklamaları oluşturun

Ek açıklamalar, kullanıcıların PDF sayfalarına özel içerik eklemesine olanak tanır. PDF uygulamaları normalde metin, çizgiler, notlar veya şekiller gibi çeşitli açıklama türlerinin oluşturulmasına ve değiştirilmesine izin verir. PDFsharp, programcıların kendi uygulamaları içinde çeşitli türlerde PDF açıklamaları oluşturmasına olanak tanır. Kitaplık, metin açıklamalarının, bağlantıların ve lastik damga açıklamalarının oluşturulmasını destekler.

C# ile PDF Metin Açıklaması Oluşturun

 // Create a PDF text annotation
PdfTextAnnotation textAnnot = new PdfTextAnnotation();
textAnnot.Title = "This is the title";
textAnnot.Subject = "This is the subject";
textAnnot.Contents = "This is the contents of the annotation.\rThis is the 2nd line.";
textAnnot.Icon = PdfTextAnnotationIcon.Note;
gfx.DrawString("The first text annotation", font, XBrushes.Black, 30, 50, XStringFormats.Default);
// Convert rectangle from world space to page space. This is necessary because the annotation is
// placed relative to the bottom left corner of the page with units measured in point.
XRect rect = gfx.Transformer.WorldToDefaultPage(new XRect(new XPoint(30, 60), new XSize(30, 30)));
textAnnot.Rectangle = new PdfRectangle(rect);
// Add the annotation to the page
page.Annotations.Add(textAnnot);

.NET ile Birden Fazla PDF Belgesini Birleştirin

Tek bir büyük belgede birleştirilmesi gereken çok sayıda PDF belgeniz mi var? PDFsharp API, birden fazla PDF dosyasını yalnızca birkaç satır kodla tek bir dosyada birleştirme işlevselliği sağlar. Geliştiriciler, mevcut PDF dosyalarından kolayca yeni bir belge oluşturabilir. Bu, görsel karşılaştırma veya diğer birkaç önemli görev için faydalı olabilir.

Belgeleri Java ile Birleştirin

 // Open the input files
PdfDocument inputDocument1 = PdfReader.Open(filename1, PdfDocumentOpenMode.Import);
PdfDocument inputDocument2 = PdfReader.Open(filename2, PdfDocumentOpenMode.Import);
// Create the output document
PdfDocument outputDocument = new PdfDocument();
// Show consecutive pages facing. Requires Acrobat 5 or higher.
outputDocument.PageLayout = PdfPageLayout.TwoColumnLeft;
XFont font = new XFont("Verdana", 10, XFontStyle.Bold);
XStringFormat format = new XStringFormat();
format.Alignment = XStringAlignment.Center;
format.LineAlignment = XLineAlignment.Far;
XGraphics gfx;
XRect box;
int count = Math.Max(inputDocument1.PageCount, inputDocument2.PageCount);
for (int idx = 0; idx < count; idx++)
{
// Get page from 1st document
PdfPage page1 = inputDocument1.PageCount > idx ?
inputDocument1.Pages[idx] : new PdfPage();
// Get page from 2nd document
PdfPage page2 = inputDocument2.PageCount > idx ?
inputDocument2.Pages[idx] : new PdfPage();
// Add both pages to the output document
page1 = outputDocument.AddPage(page1);
page2 = outputDocument.AddPage(page2);
// Write document file name and page number on each page
gfx = XGraphics.FromPdfPage(page1);
box = page1.MediaBox.ToXRect();
box.Inflate(0, -10);
gfx.DrawString(String.Format("{0} • {1}", filename1, idx + 1),
font, XBrushes.Red, box, format);
gfx = XGraphics.FromPdfPage(page2);
box = page2.MediaBox.ToXRect();
box.Inflate(0, -10);
gfx.DrawString(String.Format("{0} • {1}", filename2, idx + 1),
font, XBrushes.Red, box, format);
}
// Save the document...
const string filename = "CompareDocument1_tempfile.pdf";
outputDocument.Save(filename);
 Türkçe