Я вижу две проблемы (не смотря на сами данные потока.
" Размер целое число (обязательно) Число на единицу больше самого высокого номера объекта, используемого в этом разделе или в любом разделе, для которого это должно быть обновление. Оно должно быть эквивалентно размеру Запись в словаре трейлера. "
Ваш размер должен быть ... 14.
" Index array (Необязательно) Массив, содержащий пару целых чисел для каждого подраздела в этом разделе. Первое целое число должно быть первым номером объекта в подразделе; второе целое число должно быть количество записей в подразделе
Массив сортируется в порядке возрастания по номеру объекта. Подразделы не могут перекрываться; номер объекта может иметь не более одной записи в разделе.
Значение по умолчанию: [0 Размер]. "
Ваш индекс, вероятно, должен немного пропустить. У вас нет объектов 2-4 или 7. Индексный массив должен отражать это.
Ваши данные тоже не правы (и я только что научился читать поток внешних ссылок. Да, я.)
<br>
00 00 00<br>
01 00 0a<br>
01 00 47<br>
01 01 01<br>
01 01 70<br>
01 02 fd<br>
01 76 f1<br>
01 84 6b<br>
01 84 a1<br>
01 85 4f
Согласно этим данным, которые из-за вашего «отсутствия индекса» интерпретируются как номера объектов от 0 до 9, имеют следующее смещение:
0 не используется. Хорошо.
1 в 0x0a. Да, конечно, это
2 в 0x47. Нету. Это приземляется около начала потока "1 0". Это, вероятно, не совпадение.
3 в 0x101. Нету. 0x101 все еще находится в потоке "1 0".
4 в 0x170. То же
5 в 0x2fd. То же
6 находится в 0x76f1. Нет, и на этот раз похоронен в потоке этого изображения.
Я думаю, вы поняли идею. Поэтому, даже если у вас был правильный \ Index, все ваши смещения неверны (и полностью отличаются от того, что есть в resultNormal.pdf, даже с учетом путаницы в десятичном и шестнадцатеричном формате).
То, что вы хотите, можно найти в результате: xref: Normal:
xref<br>
0 2<br>
0000000000 65535 f<br>
0000000010 00000 n<br>
5 2<br>
0000003460 00000 n<br>
0000003514 00000 n<br>
8 5<br>
0000003688 00000 n<br>
0000003749 00000 n<br>
0000003935 00000 n<br>
0000004046 00000 n<br>
0000004443 00000 n<br>
Итак, ваш индекс должен быть (если я правильно читаю): \ Index [0 2 5 2 8 5]. И данные:
0 0 0
1 0 a
1 3460 (десятичное число)
1 3514 (то же самое)
1 3688
и т.д.
Интересно, что спецификация PDF говорит, что размер должен быть ОБА, количество записей в этом и всех предыдущих XRef И И номер на единицу больше, чем наивысший номер объекта в использовании.
Я не думаю, что более поздняя часть когда-либо будет применена, но я не удивлюсь, обнаружив, что потоки внешних ссылок более сохраняемы, чем обычные таблицы перекрестных ссылок. Возможно, один и тот же код обрабатывает и то, и другое.
@ mtraut:
Вот что я вижу:
13 0 объектов
<</Size 10/Length 44/Filter /FlateDecode/DecodeParms <</Columns 3/Predictor 12>>/W [1 2 0]/Type /XRef/Root 8 0 R>>
поток
...
endstream
endobj