Неверное смещение в таблице перекрестных ссылок в pdf - PullRequest
0 голосов
/ 23 октября 2019

У меня есть этот pdf, который был сломан, т.е. его таблица перекрестных ссылок была повреждена. Я исправил эту таблицу перекрестных ссылок новыми значениями смещения. Но акробат все еще показывает это как сломанный. Я использовал hex редактор neo для расчета новых смещений. мои значения неверны или есть другой способ рассчитать смещения. любые предложения будут полезны.

1 Ответ

2 голосов
/ 23 октября 2019

Я исправил эту таблицу перекрестных ссылок новыми значениями смещения.

Что ж, вам это удалось только частично. Ваши перекрестные ссылки:

xref
0 13
0000000000 65535 f 
0000089160 00000 n 
0000000015 00000 n 
0000089295 00000 n 
0000012216 00000 n 
0000089544 00000 n 
0000012285 00000 n 
0000012433 00000 n 
0000087869 00000 n 
0000089833 00000 n 
0000088057 00000 n 
0000089662 00000 n 
00000 00000 n  

Последняя запись явно повреждена, и после проверки записи для объектов 9..12 все оказываются неверными. Правильные значения:

xref
0 13
0000000000 65535 f 
0000089160 00000 n 
0000000015 00000 n 
0000089295 00000 n 
0000012216 00000 n 
0000089544 00000 n 
0000012285 00000 n 
0000012433 00000 n 
0000087869 00000 n 
0000088057 00000 n 
0000088533 00000 n 
0000089595 00000 n 
0000089662 00000 n  

Кроме того, ваше значение начала перекрестных ссылок

startxref
91649
%%EOF

неверно, особенно если учесть, что размер вашего файла меньше 91000 байт. Правильное значение:

startxref
89873
%%EOF

Кроме того, поток содержимого страницы не работает:

4 0 obj
<</Filter/FlateDecode/Length 1627>>stream
x
endstream
endobj 

Но, похоже, это было сделано намеренно.

...