हिन्दी

दस्तावेज़ · PDF टूलकिट

जब आप PDF को किसी ब्राउज़र में मर्ज करते हैं तो गुप्त रूप से क्या होता है

· यह काम किस प्रकार करता है

PDF फ़ाइल स्वरूपों ब्राउज़र-प्रसंस्करण

दो PDF पेज ट्री एक नए PDF दस्तावेज़ में शामिल हो रहे हैं
मूल ToolAcre वेक्टर चित्रण

PDF को मर्ज करना स्टेपलिंग जैसा दिखता है, लेकिन टूल वास्तव में पेज ऑब्जेक्ट, फ़ॉन्ट और छवियों को एक ऑब्जेक्ट ग्राफ़ से दूसरे ऑब्जेक्ट ग्राफ़ में कॉपी कर रहा है और एक नई क्रॉस-रेफरेंस टेबल लिख रहा है। यह पोस्ट उस प्रक्रिया से गुजरती है जैसे यह ब्राउज़र टैब के अंदर होती है।

मुख्य बात जो नहीं है - क्यों दो PDF को बाइट्स के रूप में संयोजित नहीं किया जा सकता है और एक मर्ज टूल को फिर से क्या बनाना चाहिए

दो PDF में प्रत्येक का अपना हेडर, ऑब्जेक्ट नंबर, पेज ट्री और क्रॉस-रेफरेंस जानकारी होती है। पहली फ़ाइल के बाद दूसरी फ़ाइल के बाइट्स जोड़ने से उसके पेज पहले दस्तावेज़ के पेज ट्री में नहीं जुड़ते हैं। विलय को अपनी वस्तुओं की ओर इशारा करते हुए संदर्भों के साथ एक नया PDF लिखना होगा।

प्रत्येक फ़ाइल को मेमोरी में पढ़ना - ब्राउज़र आपके PDF को बिना किसी अपलोड के फ़ाइल API के माध्यम से बाइट सरणियों के रूप में कैसे लोड करता है

फ़ाइल पिकर ब्राउज़र को फ़ाइल ऑब्जेक्ट देता है, सर्वर URL नहीं। PDF इंटरफ़ेस प्रत्येक चयनित फ़ाइल को file.arrayBuffer() के साथ पढ़ता है और प्रोसेसिंग ऑपरेशन के लिए Uint8Array बाइट्स पास करता है। मर्ज फ़ाइलें अपलोड नहीं करता है. यह इस दावे से अलग है कि वेबसाइट पर जाने से कभी भी नेटवर्क अनुरोध नहीं होता है: साइट को लोड करने के लिए स्वयं एक कनेक्शन की आवश्यकता होती है।

ऑब्जेक्ट ग्राफ़ को पार्स करना - हेडर, क्रमांकित ऑब्जेक्ट, पेज ट्री और क्रॉस-रेफरेंस टेबल जिसे पार्सर को फिर से बनाना है

PDF लाइब्रेरी प्रत्येक स्रोत दस्तावेज़ को लोड करती है और उसके पेज सूचकांकों का समाधान करती है। पेज फ़ाइल में अन्यत्र मौजूद ऑब्जेक्ट को संदर्भित करते हैं, जिनमें फ़ॉन्ट, छवियाँ और ग्राफ़िक्स स्थिति शामिल हैं। एक क्रॉस-रेफरेंस अनुभाग या स्ट्रीम पाठक को अप्रत्यक्ष वस्तुओं का पता लगाने में मदद करता है; यह एक साथ चिपकाने के लिए पेजों की सूची नहीं है। क्षतिग्रस्त या एन्क्रिप्टेड इनपुट पार्सिंग को रोक सकता है।

पेजों और उनके संसाधनों की प्रतिलिपि बनाना - प्रत्येक फ़ॉन्ट, छवि और ग्राफ़िक्स को पेज संदर्भों के साथ यात्रा क्यों करनी पड़ती है

कार्यान्वयन क्रम में प्रत्येक इनपुट के लिए PDFDocument.create(), फिर out.copyPages(स्रोत, source.getPageIndices()) को कॉल करता है, और प्रत्येक कॉपी किए गए पेज को आउटपुट में जोड़ता है। पुस्तकालय प्रत्येक पेज के लिए आवश्यक संदर्भित संरचनाओं को स्थानांतरित करता है; यह बिटमैप स्क्रीनशॉट नहीं बना रहा है. यह न मानें कि प्रत्येक दस्तावेज़-स्तरीय सुविधा पेजों के साथ चलती है।

मर्ज की गई फ़ाइल को लिखना - वस्तुओं को फिर से क्रमांकित करना, एक नया पेज ट्री और क्रॉस-रेफरेंस टेबल बनाना, फिर आपको एक डाउनलोड सौंपना

पेज जोड़ने के बाद, लाइब्रेरी एक नई PDF बाइट सरणी सहेजती है। इसका लेखक मूल फ़ाइलों को संयोजित करने के बजाय ऑब्जेक्ट संदर्भ और क्रमबद्धता को संभालता है। एप्लिकेशन डाउनलोड के रूप में परिणाम प्रदान करता है। क्योंकि यह एक नया दस्तावेज़ है, बाइट आकार को इनपुट के योग के बराबर होना आवश्यक नहीं है।

कारगर उदाहरण - तीन पेज के कवर लेटर और बारह पेज के स्कैन किए गए समझौते का विलय, और परिणाम का पेज क्रम और आकार आपको क्या बताता है

मान लीजिए कि एक कार्यालय प्रशासक पहले तीन पेज का कवर लेटर और बाद में बारह पेज का समझौता चुनता है। परिणाम में पंद्रह पेज होने चाहिए: कवर पेज 1–3, फिर अनुबंध पेज 4–15। फ़ाइल भेजने से पहले पहले और आखिरी पेज और कुल की जाँच करें। एक स्कैन किया गया अनुबंध आउटपुट को बड़ा रख सकता है क्योंकि इसके पेजों में छवि संसाधन होते हैं।

इसमें क्या शामिल नहीं है - बुकमार्क, फॉर्म फ़ील्ड और दस्तावेज़ मेटाडेटा, जिसका प्रबंधन टूल के अपने नियमों पर निर्भर करता है और इसके पेज पर प्रलेखित है

पेज कॉपी करना बुकमार्क, फॉर्म फ़ील्ड, मेटाडेटा या हस्ताक्षर के संरक्षण की गारंटी नहीं देता है। विशेष रूप से, यह कभी न मानें कि संरचनात्मक पुनर्लेखन के बाद क्रिप्टोग्राफ़िक हस्ताक्षर वैध रहता है। मूल प्रतियाँ रखें और किसी भी कानूनी हस्ताक्षर आवश्यकताओं को अलग से सत्यापित करें; नई फ़ाइल हस्ताक्षरित मूल नहीं है.

टेकअवे - विलय एक संरचनात्मक पुनर्लेखन है, संयोजन नहीं, और PDF टूलकिट उस पुनर्लेखन को फ़ाइल के साथ टैब में निष्पादित करता है जो आपके डिवाइस को कभी नहीं छोड़ता है

PDF मर्ज एक संरचनात्मक पुनर्लेखन है। PDF टूलकिट टैब में चयनित बाइट्स को पढ़ता है, चयनित फ़ाइल क्रम में पेजों की प्रतिलिपि बनाता है और एक नई फ़ाइल लिखता है। अपने सत्र के दौरान स्थानीय-प्रसंस्करण सीमा की जांच करने के लिए, विलय करते समय ब्राउज़र नेटवर्क पैनल का निरीक्षण करें; अपने दस्तावेज़ के किसी भी अपलोड से वेबसाइट एसेट लोड को अलग करें।