शुभ दिवस! मेरे पास इस रूट नोड के साथ पीडीएफ फाइल है:

2 0 obj
<<
/Type /Catalog
/Pages 4 0 R
/Metadata 5 0 R
/Outlines 6 0 R
/PageMode /UseOutlines
/OpenAction [7 0 R /XYZ null null 1]
/PageLabels 8 0 R
/PageLayout /OneColumn
>> 
endobj

लेकिन, जब मैं पेज नोड (4 0 ओबीजे) खोजता हूं, तो मुझे कुछ भी नहीं मिलता है। कृपया, मेरी मदद करें, यह कैसे हो सकता है और जब मैं पृष्ठों की संख्या ले सकता हूं (केवल पीडीएफ प्रारूप समाधान। कल्पना नहीं और दूसरा) धन्यवाद

pdf
0
Юрий Кот 30 अक्टूबर 2018, 17:20

1 उत्तर

सबसे बढ़िया उत्तर

आप उस वस्तु को नहीं ढूंढ सकते क्योंकि यह कई अन्य वस्तुओं के साथ एक संपीड़ित धारा के अंदर संग्रहीत है।

हमेशा की तरह, आपको क्रॉस रेफरेंस टेबल xref को पढ़ना शुरू करना चाहिए। आप पाएंगे कि यह भी संकुचित है; ISO PDF 32000-1:2008 में 7.5.8 क्रॉस-रेफरेंस स्ट्रीम देखें:

7.5.8.1 सामान्य
पीडीएफ 1.5 से शुरू होकर, क्रॉस-रेफरेंस जानकारी को क्रॉस-रेफरेंस टेबल के बजाय क्रॉस-रेफरेंस स्ट्रीम में स्टोर किया जा सकता है।

startxref एक शब्दकोश की ओर इशारा करता है

6628 0 obj
<<
/W [1 4 1]
/Info 1 0 R
/Root 2 0 R
/Size 6629
/Type /XRef
/Filter /FlateDecode
/Length 3996
/DecodeParms <<
/Columns 6
/Predictor 12
>>
>>
stream
... (compressed data) ..
endstream

और इस शो को डीकंप्रेस करना

index entry 0: 0 0 255
index entry 1: 2 3 0
index entry 2: 1 15 0
index entry 3: 1 3981 0
index entry 4: 2 3 1
index entry 5: 1 197 0
index entry 6: 2 3 2
index entry 7: 2 3 3
index entry 8: 2 3 4
index entry 9: 2 3 5
.. etc. ..

प्रविष्टि में पहला नंबर इसकी स्थिति है: 0 "अप्रयुक्त" है, एक नियमित xref तालिका में f के बराबर, 1 एक नियमित तालिका में n के बराबर है , और 2 का अर्थ है कि वस्तु किसी अन्य स्ट्रीम में संपीड़ित है। पूर्ण अर्थ के लिए आईएसओ संदर्भ देखें।

इससे, आप देख सकते हैं कि /Root ऑब्जेक्ट #2 में प्रविष्टि ऑफ़सेट 15 (दशमलव) पर है, और आपकी /Pages, #4, स्थिति #1 पर एक संपीड़ित स्ट्रीम में है। और वास्तव में, इसे डीकंप्रेस करना अपेक्षित दिखाता है

4 0 obj @ 3     % "Pages"
<<
  /Type     /Pages
  /Count    364
  /Kids     [ 
    9 0 R 10 0 R ]
>>
endobj
1
Jongware 30 अक्टूबर 2018, 14:52