.NET में प्रोग्रामेटिक रूप से दस्तावेज़ रूपांतरण प्रगति पर नज़र रखना
परिचय
क्या आप .NET के लिए Aspose.Cells का उपयोग करके अपने दस्तावेज़ रूपांतरण प्रक्रिया को बेहतर बनाना चाहते हैं? यदि हां, तो आप सही जगह पर हैं! इस ट्यूटोरियल में, हम एक्सेल दस्तावेज़ों के रूपांतरण की प्रगति को ट्रैक करने में गहराई से उतरेंगे क्योंकि वे PDF प्रारूप में परिवर्तित हो जाते हैं। न केवल हम आपको इसे प्राप्त करने के लिए आवश्यक चरणों के माध्यम से मार्गदर्शन करेंगे, बल्कि हम इस दौरान कुछ उपयोगी जानकारी भी प्रदान करेंगे। तो, चलिए शुरू करते हैं!
आवश्यक शर्तें
इससे पहले कि हम दस्तावेज़ रूपांतरण को ट्रैक करने की बारीकियों में उतरें, कुछ पूर्व-आवश्यकताएं हैं जो आपके पास होनी चाहिए:
- C# का मूलभूत ज्ञान: चूंकि हम कोड लिखने के लिए C# का उपयोग करेंगे, इसलिए इस प्रोग्रामिंग भाषा की मूलभूत समझ उपयोगी होगी।
- Visual Studio स्थापित: यह हमारे विकास वातावरण के रूप में काम करेगा। आप अपनी पसंद का कोई भी संस्करण उपयोग कर सकते हैं, लेकिन नवीनतम संस्करण हमेशा एक अच्छा विकल्प होता है।
- .NET के लिए Aspose.Cells: सुनिश्चित करें कि आपके पास Aspose.Cells इंस्टॉल है। आप इसे यहाँ से डाउनलोड कर सकते हैंAspose वेबसाइट.
- एक एक्सेल फ़ाइल: रूपांतरण के लिए एक नमूना एक्सेल फ़ाइल तैयार रखें। आप एक सरल बना सकते हैं
.xlsx
फ़ाइल का अनुसरण करें।
पैकेज आयात करें
अब जब हमने अपनी पूर्व-आवश्यकताओं को पूरा कर लिया है, तो अब समय आ गया है कि आप अपने C# प्रोजेक्ट में आवश्यक पैकेजों को आयात करें। इसे करने का तरीका यहां बताया गया है:
एक नया प्रोजेक्ट बनाएं
- Visual Studio खोलें और एक नया प्रोजेक्ट बनाएँ। सरलता के लिए कंसोल ऐप टेम्पलेट चुनें।
Aspose.Cells में संदर्भ जोड़ें
- सॉल्यूशन एक्सप्लोरर में संदर्भों पर राइट-क्लिक करें, संदर्भ जोड़ें चुनें, और यदि यह स्वचालित रूप से नहीं जोड़ा गया है तो Aspose.Cells असेंबली पर नेविगेट करें। आप पैकेज मैनेजर कंसोल में निम्न कमांड चलाकर NuGet पैकेज मैनेजर का भी उपयोग कर सकते हैं:
Install-Package Aspose.Cells
नामस्थान आयात करें
- आपके शीर्ष पर
Program.cs
फ़ाइल में, निम्नलिखित using निर्देश जोड़ें:
using Aspose.Cells.Rendering;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
अब हम अपनी परियोजना की स्थापना के लिए पूरी तरह तैयार हैं!
आधारभूत कार्य पूरा हो जाने के बाद, आइए दस्तावेज़ रूपांतरण को ट्रैक करने की वास्तविक प्रक्रिया को सुगम चरणों में विभाजित करें।
चरण 1: अपनी निर्देशिकाएँ परिभाषित करें
सबसे पहले उन निर्देशिकाओं को निर्दिष्ट करें जहाँ आपकी स्रोत और आउटपुट फ़ाइलें स्थित होंगी। इसे करने का तरीका इस प्रकार है:
// स्रोत निर्देशिका
string sourceDir = "Your Document Directory";
// आउटपुट निर्देशिका
string outputDir = "Your Document Directory";
प्रतिस्थापित करना सुनिश्चित करें"Your Document Directory"
अपने सिस्टम पर वास्तविक पथ के साथ। यह आपकी फ़ाइलों को आसानी से खोजने में मदद करेगा।
चरण 2: कार्यपुस्तिका लोड करें
इसके बाद, आपको अपने एक्सेल वर्कबुक को लोड करना होगाWorkbook
कक्षा। यहाँ बताया गया है कि कैसे:
Workbook workbook = new Workbook(sourceDir + "PagesBook1.xlsx");
कोड की यह पंक्ति एकWorkbook
ऑब्जेक्ट जो हमें हमारे द्वारा निर्दिष्ट एक्सेल फ़ाइल के साथ इंटरैक्ट करने की अनुमति देगा।
चरण 3: पीडीएफ सेव विकल्प सेट करें
अब, आइए PDF सेव ऑप्शन सेट करें। यहीं से प्रगति को ट्रैक करने का जादू शुरू होता है। आप इसका एक इंस्टेंस बनाएंगेPdfSaveOptions
और उसे एक कॉलबैक असाइन करें.
PdfSaveOptions pdfSaveOptions = new PdfSaveOptions();
pdfSaveOptions.PageSavingCallback = new TestPageSavingCallback();
एक कस्टम कॉलबैक असाइन करके (TestPageSavingCallback
), हम पृष्ठ रूपांतरण प्रगति को ट्रैक करने के लिए अपना स्वयं का तर्क लागू कर सकते हैं।
चरण 4: कार्यपुस्तिका को PDF के रूप में सहेजें
सब कुछ सेट हो जाने के बाद, अब समय है अपनी कार्यपुस्तिका को PDF के रूप में सहेजने का।Save
की विधिWorkbook
इस प्रकार क्लास करें:
workbook.Save(outputDir + "DocumentConversionProgress.pdf", pdfSaveOptions);
यह पंक्ति रूपांतरण प्रक्रिया को सक्रिय करेगी तथा पृष्ठों के संसाधित होते समय हमारी कॉलबैक विधियों को लागू करेगी।
चरण 5: कॉलबैक क्लास को लागू करें
अब चलिए बनाते हैंTestPageSavingCallback
क्लास। यह वह जगह है जहाँ आप परिभाषित करते हैं कि प्रत्येक पृष्ठ को सहेजने के आरंभ और अंत में क्या होता है।
public class TestPageSavingCallback : IPageSavingCallback
{
public void PageStartSaving(PageStartSavingArgs args)
{
Console.WriteLine("Start saving page index {0} of pages {1}", args.PageIndex, args.PageCount);
// पृष्ठ अनुक्रमणिका 2 से पहले पृष्ठों को आउटपुट न करें.
if (args.PageIndex < 2)
{
args.IsToOutput = false;
}
}
public void PageEndSaving(PageEndSavingArgs args)
{
Console.WriteLine("End saving page index {0} of pages {1}", args.PageIndex, args.PageCount);
// पृष्ठ अनुक्रमणिका 8 के बाद पृष्ठों को आउटपुट न करें।
if (args.PageIndex >= 8)
{
args.HasMorePages = false;
}
}
}
PageStartSaving
यह विधि किसी पेज के सेव होने से ठीक पहले कॉल की जाती है। यहाँ, हम प्रत्येक पेज के लिए सेविंग प्रक्रिया की शुरुआत को लॉग करते हैं। इसके अतिरिक्त, हम यह नियंत्रित कर सकते हैं कि पेज को आउटपुट करना है या नहीं। इस मामले में, इंडेक्स 2 से पहले के पेज छोड़ दिए जाते हैं।PageEndSaving
: यह विधि किसी पेज के सहेजे जाने के बाद लागू की जाती है। यह आपको प्रत्येक पेज के लिए सहेजे जाने के समय को लॉग करने और यह नियंत्रित करने की अनुमति देता है कि क्या अधिक पेजों को संसाधित किया जाना चाहिए। इस उदाहरण में, हम पेज इंडेक्स 8 के बाद रुकते हैं।
निष्कर्ष
बधाई हो! आपने .NET के लिए Aspose.Cells का उपयोग करके दस्तावेज़ रूपांतरण की प्रगति को ट्रैक करने के लिए एक सिस्टम को सफलतापूर्वक लागू किया है। यह दृष्टिकोण न केवल आपको रूपांतरण प्रक्रिया की निगरानी करने की अनुमति देता है, बल्कि आपको यह भी नियंत्रण देता है कि किन पृष्ठों को शामिल या बाहर करना है, जिससे आपका दस्तावेज़ प्रबंधन बहुत अधिक कुशल हो जाता है।
अक्सर पूछे जाने वाले प्रश्न
Aspose.Cells क्या है?
Aspose.Cells एक शक्तिशाली .NET लाइब्रेरी है जो डेवलपर्स को प्रोग्रामेटिक रूप से Excel फ़ाइलों को बनाने, हेरफेर करने और परिवर्तित करने की अनुमति देती है।
मैं Aspose.Cells का निःशुल्क परीक्षण कैसे प्राप्त कर सकता हूँ?
आप यहां से निःशुल्क परीक्षण डाउनलोड कर सकते हैंAspose वेबसाइट.
क्या रूपांतरण प्रक्रिया को अनुकूलित करना संभव है?
हां, कॉलबैक का उपयोग करके, आप रूपांतरण के दौरान पृष्ठों को संसाधित करने के तरीके को अनुकूलित कर सकते हैं।
क्या मैं आउटपुट फ़ाइल नाम को नियंत्रित कर सकता हूँ?
बिल्कुल! कार्यपुस्तिका को सहेजते समय आप अपनी आउटपुट फ़ाइल के लिए कोई भी नाम निर्दिष्ट कर सकते हैं।
मैं Aspose.Cells के लिए समर्थन कहां पा सकता हूं?
आप यहां जाकर सहायता प्राप्त कर सकते हैंएस्पोज फोरम.