.NET में कोर दस्तावेज प्रबंधन के साथ कैसे काम करें

.NET में कोर दस्तावेज प्रबंधन के साथ कैसे काम करें

Aspose.PDF FOSS for .NET provides the Document सभी पीडीएफ ऑपरेशनों के लिए केंद्रीय प्रवेश बिंदु के रूप में क्लास. पैकेज स्थापित करें dotnet add package Aspose.Pdf.Foss --version 0.1.0-alpha और उपयोग करें Document.Create(), Document.Open(), Document.Save(),और Document.Merge() .NET 8+ पर PDF दस्तावेजों को प्रोग्राम के रूप में प्रबंधित करने के लिए।.

कदम-दर-चरण गाइड

चरण 1: पैकेज स्थापित करें

अपने प्रोजेक्ट में Aspose.PDF FOSS जोड़ें:

dotnet add package Aspose.Pdf.Foss --version 0.1.0-alpha

अपने संदर्भ में जांच करें .csproj:

<PackageReference Include="Aspose.Pdf.Foss" Version="0.1.0-alpha" />

चरण 2: आवश्यक कक्षाओं का आयात

फ़ाइल के शीर्ष पर आवश्यक निर्देशों का उपयोग करें:

using Aspose.Pdf;
using Aspose.Pdf.Annotations;

चरण 3: एक नया PDF दस्तावेज़ बनाएं

उपयोग करें Document.Create() एक खाली स्मृति दस्तावेज बनाने के लिए:

using var doc = Document.Create();
// The document has no pages yet; add pages before saving
using var ms = new MemoryStream();
doc.Save(ms);
byte[] pdfBytes = ms.ToArray();

चरण 4: एक मौजूदा पीडीएफ खोलें

Document.Open एक बाइट क्रम, फ़ाइल मार्ग या स्ट्रीम स्वीकार करता है. उपयोग करें using उपयोग के बाद दस्तावेज़ को हटाने के लिए:

// From a file path
using var doc = Document.Open("input.pdf");
var page = doc.Pages[1];
// From a byte array loaded elsewhere
byte[] data = File.ReadAllBytes("input.pdf");
using var doc2 = Document.Open(data);

चरण 5: पृष्ठों का उपयोग करें

के लिए Document.Pages संपत्ति वापस लौटें A PageCollection.पृष्ठों को 1 में सूचकांक दिया गया है:

using var doc = Document.Open("input.pdf");
int pageCount = doc.Pages.Count;
var firstPage = doc.Pages[1];
double width = firstPage.Width;
double height = firstPage.Height;

चरण 6: एक दस्तावेज़ बचाएं

एक प्रवाह के साथ बचाएं Document.Save(),या फिर एक ब्लेड के साथ एक साइबर का उपयोग करें। Document.ToArray():

using var doc = Document.Open("input.pdf");
var page = doc.Pages[1];
var action = PdfAction.CreateUri("https://aspose.com/test");
page.Annotations.AddLinkAnnotation(new Rectangle(50, 700, 200, 720), action);
using var ms = new MemoryStream();
doc.Save(ms);
ms.Position = 0;
byte[] savedBytes = ms.ToArray();

चरण 7: कई दस्तावेजों को जोड़ना

उपयोग करें Document.Merge() कई को जोड़ने के लिए Document उदाहरण में एक:

using var doc1 = Document.Open("part1.pdf");
using var doc2 = Document.Open("part2.pdf");
var merged = Document.Merge(new[] { doc1, doc2 });
merged.Save("combined.pdf");

Document.MergeDocuments() एक समकक्ष अतिरंजित है जो फ़ाइल मार्ग को सीधे स्वीकार करता है।.

सामान्य समस्याएं और सुधार

पृष्ठ संग्रह Document.Create के बाद खाली है() Document.Create() कोई पृष्ठ नहीं है एक दस्तावेज़ वापस करता है. आपको स्पष्ट रूप से पहुंचने से पहले एक पृष्ठ जोड़ना होगा doc.Pages[1].एक सूचकांक तक पहुंचने की कोशिश करना जो मौजूद नहीं है, एक को फेंक देता है। IndexOutOfRangeException.

InvalidOperationException when calling Document.Open on a corrupt file (एक भ्रष्ट फ़ाइल पर कॉल करते समय अपवाद) यदि पीडीएफ बाइट रिले या फ़ाइल ट्रिंकित या अक्षम है, तो, Document.Open यह पुष्टि करें कि स्रोत बाइट रिटर्न एक पूर्ण पीडीएफ है (प्रारंभ के साथ) %PDF-(ख) इससे पहले कि आप इसे पारित करें Open.

दस्तावेज़ नहीं हटाया - उच्च-प्रूफपुट परिदृश्य में स्मृति लीक हमेशा लपेटें Document.Open और Document.Create कॉल में A using बयान - The Document क्लास लागू करें IDisposable;इसे हटाने में असमर्थता के कारण, नीचे की धारा और क्रॉस-रेफरेंस टेबल स्मृति में रहती है।.

Save(ms) after ms.Position is not reset (MS स्थिति को पुनर्स्थापित नहीं किया गया है) के बाद बचाएं जब आप वापस पढ़ते हैं A से MemoryStream बाद में doc.Save(ms),पुन: स्थापित करें ms.Position = 0 इस कदम को अनदेखा करने से पाठक को एक खाली या अंश PDF मिलता है।.

मिर्ज एक अप्रत्याशित पृष्ठ संख्या के साथ दस्तावेज़ का उत्पादन करता है सुनिश्चित करें कि सभी स्रोत दस्तावेज पूरी तरह से लोड हो जाएं, इससे पहले कि उन्हें पारित किया जाए। Document.Merge. मिश्रण कॉल से पहले एक स्रोत दस्तावेज़ रखने से एक अपूर्ण पृष्ठ पेड़ हो सकता है।.

अक्सर पूछे जाने वाले प्रश्न

क्या मैं एक पासवर्ड संरक्षित पीडीएफ खोल सकता हूं?

हाँ, उपयोग करें Document.Open(data, password) या Document.Open(path, password) दूसरे तर्क के रूप में मालिक या उपयोगकर्ता पासवर्ड प्रदान करने के लिए।.

क्या Document.ToArray() एक MemoryStream में बचत से अलग है?

Document.ToArray() यह एक आरामदायक तरीका है जो अंदरूनी रूप से बचाता है। MemoryStream और परिणाम बाइट क्रम वापस करता है. दोनों मार्ग समान पीडीएफ आउटपुट का उत्पादन करते हैं.

क्या है पृष्ठ संपत्ति प्रकार?

Document.Pages प्रकार के हैं PageCollection.1. यह 1 इंडेक्स है; doc.Pages[1] यह पहला पृष्ठ है।.

क्या मैं एक दस्तावेज़ को कई बार बचा सकता हूं?

आप कॉल कर सकते हैं doc.Save() या doc.ToArray() एक ही दस्तावेज़ के उदाहरण पर कई बार. प्रत्येक कॉल वर्तमान दस्त की स्थिति को सीरियल करता है.

मैं कैसे जांच सकता हूं कि एक दस्तावेज़ लाइसेंस प्राप्त है या नहीं?

Document.IsLicensed लौटें A bool आंतरिक लाइसेंस की स्थिति को इंगित करते हुए. Aspose.PDF FOSS के लिए यह केवल सूचनात्मक है - कोई सक्रियण आवश्यक नहीं है।.

See Also

 हिन्दी