PDF फ़ाइल के अंदर क्या होता है, और उसकी मरम्मत क्या करती है?
PDF में एक हेडर होता है जो उसका वर्ज़न बताता है, क्रमांकित ऑब्जेक्ट (पेज, फ़ॉन्ट, इमेज, स्ट्रीम) की बॉडी, एक क्रॉस-रेफ़रेंस टेबल जो दर्ज करती है कि हर ऑब्जेक्ट कहाँ शुरू होता है, और एक ट्रेलर जो कैटलॉग और मेटाडेटा की ओर इशारा करता है। मेटाडेटा Info डिक्शनरी (शीर्षक, लेखक, तारीख़ें, प्रोड्यूसर) में और PDF 1.4 से XMP स्ट्रीम में रहता है; फ़ॉन्ट पूरे एम्बेड, सबसेट या केवल नाम से संदर्भित होते हैं। जो व्यूअर कोई ऑब्जेक्ट न ढूँढ पाए वह क्रॉस-रेफ़रेंस टेबल फिर बनाने के लिए फ़ाइल को स्कैन करता है — मरम्मत यही करती है और फिर से बनी टेबल लिख देती है, जिससे ज़्यादातर "फ़ाइल क्षतिग्रस्त" त्रुटियाँ पेजों को छुए बिना ठीक हो जाती हैं।
PDF रिपेयर करें कैसे इस्तेमाल करें
- खराब PDF छोड़ें।
- "रिपेयर करें" पर क्लिक करें।
- नतीजा पढ़ें और अगर फ़ाइल बनी हो तो फिर से लिखी फ़ाइल डाउनलोड करें।
PDF रिपेयर करें की खूबियाँ
- क्रॉस-रेफ़रेंस टेबल और ट्रेलर फिर बनाता है
- गलत ऑफ़सेट, जंक या गायब %%EOF वाली फ़ाइलों से पेज रिकवर करता है
- नतीजा दोबारा वैलिडेट कर पहले / बाद के एरर बताता है
- ईमानदार नतीजे: पहले से वैध, रिपेयर्ड, आंशिक रूप से रिकवर्ड, रिकवर नहीं हो सकती
- फ़ॉर्म फ़ील्ड होने पर उन्हें रखता है (जगह पर री-सेव)
PDF रिपेयर करें का उदाहरण
टेक्स्ट-मोड FTP ट्रांसफ़र से गुज़री PDF
इनपुट:
damaged.pdf — CRLF में बदली, xref ऑफ़सेट गलतआउटपुट:
damaged-repaired.pdf — नतीजा: रिपेयर्ड, 32 पेज रिकवर, एरर पहले 2 / बाद 0PDF रिपेयर करें के बारे में अक्सर पूछे जाने वाले सवाल
किस तरह का नुकसान रिपेयर हो सकता है?
टूटी या गायब क्रॉस-रेफ़रेंस टेबल, गलत ऑब्जेक्ट ऑफ़सेट (टेक्स्ट-मोड ट्रांसफ़र से गुज़री फ़ाइलें), हेडर से पहले जंक, गायब %%EOF, और ऐसे अमान्य ऑब्जेक्ट जो पेज नहीं हैं। कटी फ़ाइलें गायब हिस्से के पेज खो देती हैं।
नतीजों का क्या मतलब है?
"पहले से वैध": रिपेयर से पहले ही फ़ाइल साफ़ पार्स हो रही थी; फिर भी नई लिखी कॉपी दी जाती है। "रिपेयर्ड": फिर से लिखी फ़ाइल वैलिडेशन पास करती है। "आंशिक रूप से रिकवर्ड": कुछ पेज या ऑब्जेक्ट रिकवर हुए पर एरर बाकी हैं। "रिकवर नहीं हो सकती": कोई पेज ट्री नहीं मिला — डाउनलोड बीच में रुका था तो फ़ाइल दोबारा लें।
क्या रिपेयर की फ़ाइल वैसी ही दिखेगी?
रिकवर हुए पेज जस के तस कॉपी होते हैं, इसलिए हाँ। जिन पेजों की कंटेंट स्ट्रीम नष्ट हुई वे खाली हो सकते हैं; रिपोर्ट बताती है कितने पेज रिकवर हुए।
क्या मेरी PDF किसी सर्वर पर अपलोड होती है?
नहीं। फ़ाइल आपका ब्राउज़र WebAssembly और JavaScript से खोलता और प्रोसेस करता है; Mutqan Soft या किसी और को कुछ नहीं भेजा जाता। टैब बंद करें और फ़ाइल चली जाती है। नतीजा डाउनलोड करने के लिए सिर्फ़ एक मुफ़्त अकाउंट चाहिए — न सब्सक्रिप्शन, न भुगतान।
क्या यह पासवर्ड वाली PDF पर काम करता है?
हाँ, अगर आप पासवर्ड जानते हैं: फ़ाइल सूची एक बार पासवर्ड पूछती है और फिर हर ऑपरेशन डिक्रिप्ट किए पेजों पर चलता है। नतीजा बिना पासवर्ड सेव होता है जब तक आप उसे दोबारा सुरक्षित न करें।
तकनीकी नोट्स
pdf-lib का सहनशील पार्सर क्रॉस-रेफ़रेंस टेबल पर भरोसा करने की बजाय फ़ाइल में ऑब्जेक्ट खोजता है; रिकवर हुए पेज नए दस्तावेज़ में कॉपी होते हैं (या AcroForm होने पर दस्तावेज़ जगह पर री-सेव होता है)। फिर से लिखे बाइट दोबारा वैलिडेटर से गुज़रते हैं, और नतीजा तुलना से निकाला जाता है, कभी मान नहीं लिया जाता।
संदर्भ
- ISO 32000-2:2020 — Document management — Portable document format — Part 2: PDF 2.0वर्तमान PDF मानक: फ़ाइल संरचना, ऑब्जेक्ट, पेज, फ़ॉन्ट, एनोटेशन, फ़ॉर्म और एन्क्रिप्शन।
- PDF Reference — ISO 32000-1:2008 (PDF 1.7), Adobe copyमुफ़्त पढ़ने योग्य PDF 1.7 स्पेसिफ़िकेशन: पेज ट्री, कंटेंट स्ट्रीम, मेटाडेटा, अनुमतियाँ और स्टैंडर्ड सिक्योरिटी हैंडलर।
- PDF.jsओपन-सोर्स PDF रेंडरर जो बिना प्लगइन ब्राउज़र में PDF पेज बनाता है — दस्तावेज़ लोकली कैसे प्रीव्यू होते हैं।