PDF पुस्तकालय की विशेषताएं
PDF पुस्तकालय की विशेषताएं
इस पृष्ठ में मुख्य सुविधा क्षेत्रों को संक्षेप में प्रस्तुत किया गया है. PDF FOSS for Go. प्रत्येक अनुभाग पूर्ण कोड उदाहरण के साथ डेवलपर-गैंड पेजों से लिंक करता है।.
दस्तावेज प्रबंधन
Document यह एक सेंट्रल प्रकार है. यह खुलेपन का समर्थन करता है (Open, OpenWithPassword), बनाए रखने के लिए (NewDocumentबचत (Save) और पृष्ठ संग्रह पर काम करते हैं (Split, Append, Extract, PageCount). SetMetadata और Metadata प्रदान करें पढ़ने / लिखने के लिए जानकारी शब्दकोश फ़ील्ड तक पहुंच।.
doc, _ := pdf.Open("input.pdf")
pages, _ := doc.Split()
fmt.Printf("Split into %d pages\n", len(pages))सुरक्षा और एन्क्रिप्शन
EncryptionOptions एक ही कॉल में पासवर्ड-आधारित एन्क्रिप्शन सेट करें Document.SetEncryption.समर्थन एल्गोरिथ्म: AES-128 (आधारित), Aes-256 (ISO 32000-2 / पीडीएफ 2.0) और RC4-128. Permissions व्यक्तिगत नियंत्रण ऑपरेशन - प्रिंट, कॉपी, पहुंचता - स्वतंत्र रूप से।.
doc, _ := pdf.Open("doc.pdf")
doc.SetEncryption(pdf.EncryptionOptions{
UserPassword: "user",
OwnerPassword: "owner",
Permissions: &pdf.Permissions{AllowPrint: true},
})
doc.Save("doc_secured.pdf")AcroForm प्रसंस्करण
Document.Form लौटें A *Form सभी क्षेत्रों में पहुंच प्रदान करें. प्रकार दावे विशिष्ट क्षेत्र प्रकारों को उजागर करते हैं: TextBoxField, CheckboxField, RadioButtonField, ComboBoxField, ListBoxField,और ButtonField. फ़ील्ड मूल्य लिखित हैं; उपस्थिति स्वचालित रूप से पीडीएफ दर्शकों द्वारा पुनर्जीवित की जाती है।.
doc, _ := pdf.Open("form.pdf")
text := doc.Form().Field("name").(*pdf.TextBoxField)
text.SetValue("Jane Doe")
doc.Save("form_filled.pdf")टेबल लेआउट
Table, Row,और Cell पृष्ठों पर स्थित नेटवर्क लेआउट बनाएं।. BorderInfo सीमा शैलियों को सेल के लिए या पूरे टेबल के बारे में स्थापित करें।. MarginInfo पैडिंग सेट करें।. TextStyle, Font, Color, HAlign,और VAlign पाठ प्रस्तुति का नियंत्रण।.
Bookmark और Navigation
OutlineItemCollection एक ही पुस्तक चिह्न का प्रतिनिधित्व करता है. शीर्षक सेट करें, हिम्मत / इतालवी रंग, आकार और स्थान (DestinationXYZ, DestinationFit, DestinationFitH. नस्टेड बुकमार्क एक अध्याय / अनुभाग दिरकार बनाता है।. NamedDestinations नाम के अनुसार उपलब्ध पुन: उपयोग योग्य पृष्ठ लक्ष्यों प्रदान करता है।.
Annotations
AnnotationCollection सभी नोटों को एक पृष्ठ पर रखता है. उपलब्ध प्रकार शामिल हैं TextAnnotation, FreeTextAnnotation, StampAnnotation, HighlightAnnotation, LinkAnnotation, RedactAnnotation, InkAnnotation, LineAnnotation, SquareAnnotation,और CircleAnnotation.
Image संभालना
Image यह एक अंतर्निहित छवि संसाधन है।. ImageInfo आकार और रंग स्थान. छवियों को सीधे पृष्ठों में जोड़ा जा सकता है या टेबल सेल में अंतर्निहित किया जा सकते हैं. OptimizeImageOptions फ़ाइल आकार में कमी के लिए संपीड़न पैरामीटर प्रदान करता है।.
Image में बदलना
BmpDevice, PngDevice, JpegDevice, GifDevice,और TiffDevice रेंडिंग प्रत्येक डिवाइस को एक-एक करके बनाया जाता है. प्रत्येक फ़ाइल में एक Resolution मूल्य और प्रदर्शित करने के लिए एक Render* जिसका परिणाम है कि लेखन का पाठ्यक्रम एक io.Writer. RenderOptions प्रीमियम के लिए आउटपुट (Rendering parameters)DPI) और पृष्ठभूमि रंग।.
doc, _ := pdf.Open("report.pdf")
page, _ := doc.Page(1)
dev := pdf.NewPngDevice(pdf.Resolution{DPI: 150})
f, _ := os.Create("page1.png")
defer f.Close()
dev.Process(page, f)पाठ खोज
SearchText एक प्रश्न पत्र को स्वीकार करें और SearchOptions फिर एक कटोरा लौटाता है। TextMatch परिणाम - प्रत्येक TextMatch संदर्भ में, पाठ का वर्णन किया गया है, इसकी सीमा पृष्ठ पर बॉक्स, और पृष्ठ सूचकांक जहां यह पाया गया था।.
doc, _ := pdf.Open("report.pdf")
matches, _ := doc.SearchText("invoice", pdf.SearchOptions{CaseInsensitive: true})
for _, m := range matches {
fmt.Printf("Found %q on page %d\n", m.Text, m.PageNumber)
}फ्लैटिंग फॉर्म
Document.Flatten सभी इंटरैक्टिव फॉर्म फ़ील्ड को स्थिर सामग्री में परिवर्तित करता है।. फ़ील्ड मूल्यों को पृष्ठ ग्राफिक्स में पैक किया जाता है और फॉर्म फ़ाइलों को हटा दिया जाता हैं, एक पीडीएफ बनाना जो संपादित नहीं किया जा सकता है।.
doc, _ := pdf.Open("form_filled.pdf")
doc.Flatten()
doc.Save("form_flat.pdf")API संदर्भ सारांश
| Type | Purpose |
|---|---|
Document | कोर दस्तावेज़ कंटेनर - खोलने, बनाने, सहेजने के लिए, विभाजित करने के बाद, मिश्रण |
Page | एकल पृष्ठ पहुंच - आकार, नोट्स, सामग्री |
Form | AcroForm कंटेनर - फ़ील्ड सूची और पहुंच |
Table | लाइसेंस तत्व |
EncryptionOptions | पासवर्ड और एल्गोरिथ्म सेटिंग्स |
Permissions | प्री-ऑपरेटिंग एक्सेस नियंत्रण झंडे |
OutlineItemCollection | Bookmark पेड़ नोड्स |
AnnotationCollection | कंटेनर के लिए पृष्ठ सूची |
Metadata | Info शब्दकोश पढ़ना / लिखना |
Image | इमेज संसाधनों में शामिल |
BmpDevice | PDF पृष्ठ को BMP में रेंडर करें |
PngDevice | पीडीएफ पृष्ठ को PNG में रेंडर करें |
JpegDevice | PDF पृष्ठ को JPEG में रेंडर करें |
TiffDevice | PDF पृष्ठ को TIFF में रेंडर करें |
GifDevice | PDF पृष्ठ को GIF में रेंडर करें |
RenderOptions | रेंडर पैरामीटर – डीपीआई और पृष्ठभूमि रंग |
SearchOptions | पाठ खोज संकल्प |
TextMatch | एकल पाठ खोज परिणाम के साथ सीमा बॉक्स |
LinearGradient | वेक्टर आकार के लिए लाइन ग्रेडिंट भरें |
RadialGradient | रेडियल ग्रेडिंट भरें vector shapes के लिए |