Помимо ответа Оле (это довольно хорошее руководство), определенно стоит прочитать спецификацию для Open Container Format (OCF) - извините, это файл слов. Это формальная спецификация для используемой структуры zip.
Вкратце вы анализируете файл по
- Проверка его достоверности с помощью поиска текста «mimetype», начинающегося с байта 30, и текста «application / epub + zip», начинающегося с байта 38.
- Извлечение файла META-INF / container.xml из архива
- Анализ этого файла и извлечение значения атрибута
full-path
первого элемента rootfile
в нем.
- Загрузить указанный файл (атрибут
full-path
является URL-адресом относительно корня zip-файла)
- Разобрать этот файл. Он содержит все метаданные, необходимые для ссылки на все остальное содержимое (в основном XHTML / CSS / images). В частности, вы хотите прочитать содержимое элемента
spine
, который перечислит все файлы содержимого в порядке чтения.
Если вы хотите сделать это правильно, вам, вероятно, следует также обрабатывать контент DTBook .
Если вы хотите сделать это правильно, вам необходимо прочитать и понять спецификации Open Packaging Format (OPF) и Open Publication Structure (OPS) .