Из стандартного документа PDF ISO (PDF32000-2008) неясно, может ли комментарий следовать за ключевым словом startxref
:
startxref
Byte_offset_of_last_cross-reference_section
%%EOF
Стандарт, похоже, подразумевает, что комментарии могут появляться где угодно:
7.2.3 Комментарии
Любое вхождение PERCENT SIGN (25h) вне строки или потока вводит комментарий. Комментарий состоит из всех символов после знака PERCENT и вплоть до конца строки, но не включая его, включая обычные символы, разделители, пробел (20h) и символы HORZONTAL TAB (09h). Соответствующий читатель должен игнорировать комментарии и рассматривать их как отдельные символы пробела. То есть комментарий отделяет маркер, предшествующий ему, и токен, следующий за ним.
ПРИМЕР Фрагмент PDF в этом примере синтаксически эквивалентен только токенам abc и 123.
abc% comment ( /%) blah blah blah
123
Комментарии (кроме% PDF – n.m и
%% EOF комментарии описаны в 7.5, "Файл
Структура ") не имеют семантики. Они
не обязательно сохраняются
приложения, которые редактируют файлы PDF.
Если им разрешено появляться после startxref
, синтаксический анализ файла становится более сложным, поскольку вы не знаете, как далеко отступить от комментария %%EOF
, чтобы начать синтаксический анализ и найти смещение в байтах.
Есть идеи?