2015-04-28 4 views
0

Как говорится в названии поддерживает iOS PDF/A?Поддерживает ли IOS PDF/A?

Я попытался открыть ее, но в основном я получаю белую страницу с ошибками, как

illegal character `/' encountered in hex string. 
illegal character `/' encountered in hex string. 
invalid stream length 557; should be 563. 
FlateDecode: decoding error: invalid distance too far back. 
FlateDecode: decoding error: invalid distance too far back. 
invalid stream length 51645; should be 52016. 
FlateDecode: decoding error: invalid bit length repeat. 
FlateDecode: decoding error: invalid distance too far back. 
FlateDecode: decoding error: invalid distance too far back. 

Может быть, я делаю что-то неправильно, но я не нашел никакой информации, какие типы PDF UIWebView или QLPreviewController поддержка.

Edit:

Теперь я создал 2007 документ Word, с одной строки текста и сохранили его как обычный PDF (с Adobe Plugin). Тогда я openend в PDF и превратил его в различные доступные стандарты с Предполетным инструментом:

  • PDF/A-1a
  • PDF/A-1b
  • PDF/A-2a
  • PDF/A-2b
  • PDF/A-2u

Я также проверил, действительно ли она поддерживает этот стандарт с Предполетным инструментом. Затем я отобразил PDF/A на моем UIWebView, и текст был отображен, и я не получил ошибку в консоли.

Затем мне удалось получить доступ к проблемному PDF-файлу, и я также проверил его с помощью инструмента предпросмотра. Резюме для PDF/A-1a и PDF/A-1b был:

  • заголовок файла не совместим с PDF/A
  • Синтаксис Проблема: PDF файл содержит данные после того, как конец файла

Он не соответствует ни одному из стандартов, доступных в инструменте Preflight. Поэтому да, iOS поддерживает PDF/A, но вы должны проверить, действительно ли ваш PDF.

+0

Эти сообщения об ошибках звучат как файл, даже не действительный PDF ... – mkl

+0

Как я уже сказал, может быть, я сделал что-то неправильно. Но файл можно открыть в другом приложении, чтобы он был прав в формате PDF. Я боюсь, что 'PDF/A' не поддерживается, потому что другие PDF-файлы отлично работают с моим кодом. – testing

+2

* Но файл может быть открыт в другом приложении, поэтому он должен быть достоверным PDF. * - Это предположение обычно неверно. PDF (Pre) зрители склонны игнорировать многие ошибки в PDF-файлах. Например. в случае ваших сообщений об ошибках зрители могут просто прочитать поток до конца, игнорируя его запись по длине, или они могут читать 'length' много байтов, игнорируя то, что это точно соответствует концу потока. – mkl

ответ

1

Короткий ответ на ваш вопрос: да.

Чем дольше один, ну ... немного больше :)

PDF/A или PDF для Архивного является стандартом ISO, который основан на стандарте ISO для самого PDF (ISO 32,000). Как следствие, любое программное обеспечение, поддерживающее «PDF», также должно обязательно поддерживать PDF/A. В противном случае все файлы PDF/A являются файлами PDF, но не все файлы PDF являются файлами PDF/A.

Чтобы усложнить ситуацию, хотя ... существует много различных версий PDF, и существует как минимум 8 различных форм (части и вкусы вместе) PDF/A. Не все программное обеспечение поддерживает все версии PDF, более сложные функции (такие как сжатие JPEG-2000 для названия, но один пример) могут не поддерживаться вашей конкретной платформой или программным обеспечением по выбору.

Так у вас есть два шага, чтобы пройти через:

1) Убедитесь, что ваш PDF/A действительно - есть коммерческое программное обеспечение, чтобы сделать это, такие как Adobe Acrobat или каллы pdfToolbox или pdfaPilot (предостережение: Я связанные с этими приложениями), и для этого есть бесплатное программное обеспечение (см. здесь: http://www.pdf-tools.com/pdf/validate-pdfa-online.aspx).

2) Если ваш PDF/A действителен, убедитесь, что ваше программное обеспечение/платформа поддерживает функции в этом конкретном файле PDF/A, на который вы смотрите. Например, PDF/A-1 является более старым стандартом, чем PDF/A-3, и поддерживает меньшее количество функций. Следовательно, у вас будет больше шансов, что файл PDF/A-1 будет поддерживаться, чем файл PDF/A-3.

Смежные вопросы