Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Last revision Both sides next revision | ||
monsters [2021/07/23 17:24] christian |
monsters [2021/07/24 07:53] christian [Incorrect stream length] |
||
---|---|---|---|
Line 11: | Line 11: | ||
===== Missing object ===== | ===== Missing object ===== | ||
- | An attribute of an object has a reference pointing to a free reference in the cross references, i.e. the object is not in the file. This will raise a '' | + | An attribute of an object has a reference pointing to a free reference in the cross references. |
=== Example === | === Example === | ||
+ | |||
+ | Referencing indirect object (2 0): the ''/ | ||
+ | |||
+ | <code pdf> | ||
+ | 1 0 obj | ||
+ | << | ||
+ | /Outlines 2 0 R | ||
+ | /Pages 3 0 R | ||
+ | >> | ||
+ | endobj | ||
+ | </ | ||
+ | |||
+ | The cross reference section | ||
+ | <code pdf> | ||
+ | xref | ||
+ | 0 7 | ||
+ | 0000000000 65535 f | ||
+ | 0000000009 00000 n | ||
+ | 0000000000 65535 f | ||
+ | 0000000131 00000 n | ||
+ | ... % 4 more | ||
+ | </ | ||
+ | |||
+ | The reference to object (2 0) is the 3rd entry in the '' | ||
=== Handling === | === Handling === | ||
+ | |||
+ | A proceedable '' | ||
When writing out the reference to a new PDF, a string '' | When writing out the reference to a new PDF, a string '' | ||
Line 25: | Line 51: | ||
===== Incorrect stream length ===== | ===== Incorrect stream length ===== | ||
- | The ''/ | + | The ''/ |
+ | |||
+ | The following cases are possible: | ||
+ | * ''/ | ||
+ | * ''/ | ||
+ | |||
+ | The particular monster where I encountered this, had always one byte too much in the content. Therefore, not the general problem was handled, but just the simple case where the content is exactly 1 larger | ||
=== Example === | === Example === | ||
Line 31: | Line 63: | ||
< | < | ||
42 0 obj | 42 0 obj | ||
- | <</ | + | <</ |
- | stream | + | stream |
abcdefghij | abcdefghij | ||
- | endstream | + | endstream |
endobj | endobj | ||
</ | </ | ||
Line 48: | Line 80: | ||
=== Reference === | === Reference === | ||
- | Seen in ''/ | + | Seen in ''/ |