PDFsharp
पीडीएफ प्रोसेसिंग के लिए ओपन सोर्स .NET एपीआई
नि:शुल्क C# .NET लाइब्रेरी के माध्यम से PDF दस्तावेज़ बनाएं, हेरफेर करें, कनवर्ट करें और संसाधित करें।
पीडीएफशार्प क्या है?
ओपन सोर्स .NET लाइब्रेरी जिसका उपयोग पीडीएफ फाइलों के टेक्स्ट या मेटा-डेटा को बनाने, रेंडर करने, मर्ज करने, विभाजित करने, संशोधित करने, प्रिंट करने और निकालने के लिए किया जा सकता है। PDFsharp API किसी भी .NET भाषा से तुरंत PDF दस्तावेज़ बनाने का समर्थन करता है। यह एक्सएमएल फाइलों या प्रत्यक्ष इंटरफेस के माध्यम से विभिन्न स्रोतों से डेटा आयात करने का भी समर्थन करता है। यह पेज लेआउट, टेक्स्ट फ़ॉर्मेटिंग और दस्तावेज़ डिज़ाइन के लिए कई विकल्पों का समर्थन करता है।
PDFsharp GDI+ या WPF पर आधारित ग्राफिकल कार्यान्वयन प्रदान करता है। एपीआई एक पीडीएफ पेज के साथ-साथ एक विंडो या प्रिंटर पर ड्राइंग के लिए एक स्रोत कोड का उपयोग करने के लिए सुविधाएं प्रदान करके डेवलपर के काम को आसान बनाता है। यह पीडीएफ फाइलों को संसाधित करने के लिए कई महत्वपूर्ण विशेषताओं का समर्थन करता है जैसे कि पीडीएफ को संशोधित करना, पीडीएफ को मर्ज या विभाजित करना, एक्सपीएस से पीडीएफ रूपांतरण, पीडीएफ रेंडरिंग, पीडीएफ डेटा निष्कर्षण, फ़ॉन्ट एम्बेडिंग और सब्मिटिंग, यूनिकोड समर्थन और बहुत कुछ।
पीडीएफशार्प के साथ शुरुआत करना
PDFsharp AGPL/वाणिज्यिक सॉफ़्टवेयर के रूप में दोहरे लाइसेंस वाला है। एजीपीएल एक फ्री/ओपन सोर्स सॉफ्टवेयर लाइसेंस है।
अपने प्रोजेक्ट में PDFsharp जोड़ने के लिए NuGet का उपयोग करने की अत्यधिक अनुशंसा की जाती है,
नुगेट कमांड
Install-Package PdfSharp
विजुअल स्टूडियो के साथ आप NuGet पैकेज मैनेजर को आसानी से NuGet पैकेज तक पहुंचने के लिए स्थापित कर सकते हैं। यह वीएस 2012 एक्सप्रेस के साथ-साथ वीएस 2013 और वीएस 2015 के सामुदायिक संस्करणों के साथ काम करता है। विजुअल स्टूडियो में "टूल्स" => यदि आपके पास अभी तक नहीं है तो NuGet पैकेज मैनेजर को स्थापित करने के लिए "एक्सटेंशन और अपडेट ..."। NuGet पैकेज मैनेजर आपके लिए पैकेज डाउनलोड करेगा, इसे इंस्टॉल करेगा, और आपके प्रोजेक्ट में एक संदर्भ जोड़ देगा।
नि:शुल्क .NET API के माध्यम से PDF दस्तावेज़ जेनरेट और संशोधित करें
सॉफ़्टवेयर डेवलपर अपने स्वयं के .NET अनुप्रयोगों के अंदर एक नया PDF दस्तावेज़ बनाने के लिए PDFsharp API का उपयोग कर सकते हैं। एक बार दस्तावेज़ बन जाने के बाद आप एक खाली पृष्ठ जोड़ सकते हैं और साथ ही ग्राफिक्स या टेक्स्ट को आसानी से सम्मिलित कर सकते हैं। यह डेवलपर्स को मौजूदा दस्तावेज़ को उनकी आवश्यकताओं के अनुसार संशोधित करने और अपनी पसंद के नाम से सहेजने की सुविधा भी देता है। निम्नलिखित चरणों का उपयोग करके आप सी # में पीडीएफ दस्तावेज़ों को उत्पन्न और हेरफेर कर सकते हैं।
- पीडीएफ दस्तावेज़ प्रारंभ करें
- पृष्ठ जोड़ें
- ड्राइंग के लिए XGraphics ऑब्जेक्ट प्राप्त करें
- एक फ़ॉन्ट बनाएं
- लेख जोड़ें
- दस्तावेज़ सहेजें
सी # का उपयोग कर पीडीएफ बनाएं
// 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 के माध्यम से पीडीएफ एनोटेशन बनाएं
एनोटेशन उपयोगकर्ताओं को पीडीएफ पृष्ठों पर कस्टम सामग्री जोड़ने की अनुमति देता है। पीडीएफ एप्लिकेशन आम तौर पर विभिन्न प्रकार के एनोटेशन, जैसे टेक्स्ट, लाइन, नोट्स या शेप आदि के निर्माण और संशोधन की अनुमति देते हैं। पीडीएफशार्प प्रोग्रामर को अपने स्वयं के एप्लिकेशन के अंदर विभिन्न प्रकार के पीडीएफ एनोटेशन बनाने में सक्षम बनाता है। पुस्तकालय टेक्स्ट एनोटेशन, लिंक और रबर स्टैम्प एनोटेशन के निर्माण का समर्थन करता है।
सी # के माध्यम से एक पीडीएफ टेक्स्ट एनोटेशन बनाएं
// 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 . के माध्यम से अनेक PDF दस्तावेज़ों को संयोजित करें
क्या आपके पास कई PDF दस्तावेज़ हैं जिन्हें एक बड़े दस्तावेज़ में संयोजित करने की आवश्यकता है? PDFsharp API आपको कोड की कुछ पंक्तियों के साथ कई PDF फ़ाइलों को एक में संयोजित करने की कार्यक्षमता प्रदान करता है। डेवलपर्स मौजूदा पीडीएफ फाइलों से आसानी से एक नया दस्तावेज़ बना सकते हैं। यह दृश्य तुलना या कई अन्य महत्वपूर्ण कार्यों के लिए उपयोगी हो सकता है।
जावा के माध्यम से दस्तावेज़ों को मिलाएं
// 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);