iPhone - чтение файлов .epub - PullRequest
       16

iPhone - чтение файлов .epub

1 голос
/ 26 ноября 2010

Я занимаюсь подготовкой приложения для чтения файлов .epub в iPhone.Где я могу получить ссылку на примеры приложений для разархивирования и анализа файлов?Кто-нибудь может направить меня с лучшей ссылкой?Заранее спасибо.

Ответы [ 2 ]

2 голосов
/ 26 ноября 2010

Файл .epub - это просто файл .zip.Он содержит несколько файлов каталогов в формате XML, а фактическим содержанием книги обычно является XHTML.Вы можете использовать Objective-Zip , чтобы распаковать файл .epub, а затем использовать NSXMLParser для анализа файлов XML.

Дополнительная информация: Руководство по построению формата Epub

0 голосов
/ 28 ноября 2010

Помимо ответа Оле (это довольно хорошее руководство), определенно стоит прочитать спецификацию для Open Container Format (OCF) - извините, это файл слов. Это формальная спецификация для используемой структуры zip.

Вкратце вы анализируете файл по

  1. Проверка его достоверности с помощью поиска текста «mimetype», начинающегося с байта 30, и текста «application / epub + zip», начинающегося с байта 38.
  2. Извлечение файла META-INF / container.xml из архива
  3. Анализ этого файла и извлечение значения атрибута full-path первого элемента rootfile в нем.
  4. Загрузить указанный файл (атрибут full-path является URL-адресом относительно корня zip-файла)
  5. Разобрать этот файл. Он содержит все метаданные, необходимые для ссылки на все остальное содержимое (в основном XHTML / CSS / images). В частности, вы хотите прочитать содержимое элемента spine, который перечислит все файлы содержимого в порядке чтения.

Если вы хотите сделать это правильно, вам, вероятно, следует также обрабатывать контент DTBook .

Если вы хотите сделать это правильно, вам необходимо прочитать и понять спецификации Open Packaging Format (OPF) и Open Publication Structure (OPS) .

...