...

суббота, 30 ноября 2013 г.

О форматах электронных книг

<Приветствие>




Этот пост о том, что я думаю о форматах fiction book и electronic publication. А цель — не поделиться чем-то важным и рассказать что-то интересное, а прежде всего вынести что-то для себя.

Краткое вступление. Начал читать книгу по программированию в формате fb2: ни кода, ни картинок. Один голый текст. Да и строки некоторые не на своих местах. Нет, это не формат fb2 кривой, просто такая книга попалась. А в pdf читать на телефоне не очень удобно.

</Приветствие>




Сразу оговорюсь. Я не изучал досконально спецификацию этих форматов, а всего лишь бегло просмотрел. Я знаю, что сейчас стало очень модно делиться мыслями, выражать недовольство и лить воду. Поэтому под кат приглашаю только тех, кому интересно и кому есть что сказать об этом.



О хорошем




FictionBook. Замечательный формат для художественной литературы. Хорошая идеология. Логическое форматирование и отсутствие необходимости скроллить вправо-влево на малых устройствах. Автоматическая обработка книг благодаря метаданным. Легкий экспорт в другие популярные форматы и довольно простая спецификация.

ePub. Неплохой формат для визуального форматирования. Простота создания книги без соответствующих программ.

Более подробно описывать форматы не буду.

Теперь о плохом




Недостатков у ePub достаточно. Я считаю, что лучше поговорить о другом. FictionBook — это формат для художественной литературы. Сейчас, конечно, разрабатывается формат fb3, который предположительно решит проблему с форматированием текста. Однако, кое-что мне в нем все равно не нравится. Это использование XML. Сила ePub в том, что текст можно отформатировать, зная только html. Многие из вас знают html-теги? А элементы FictionBook? Все скажут, что для редактирования есть специальные программы. Да, есть. Но, похоже, что не все программисты достаточно хорошо понимают элементы стандарта FIctionBook. Следствие этого — перепутанные строки, которые меня периодически сбивали с толку. На самом деле, всё это пустая болтовня и особых неудобств это не доставляет. Достаточно просто посидеть и конвертировать/отформатировать во что/как душе угодно. Но всё же, хотелось бы не заморачиваться по этому поводу, а скачать и начать читать.

Всё сложно




Тут представлены различные документы по формату FictionBook. Как мне кажется, стандарт FB излишне сложен. Поэтому хочется взять и скрестить. Взять лучшее от ePub и FB.

Чтобы лучше понять, что нужно брать от FB, а что от ePub, следует взглянуть на следующее. Контент в ePub представлен в виде html-файлов, оформление — css. Плохо в этом то, что для книг множество HTML избыточно, а пользовательские настройки пересекаются с css. В FB же есть несколько интересных элементов для форматирования, значение которых важно. Например, элемент poem, epigraph. Или stanza. На мой взгляд, в этих элементах нет нужды. Для представления контента достаточно определить необходимое подмножество HTML и CSS. Такое, которое не будет убивать удобство ради выразительности. Если определить необходимое подмножество HMTL и CSS(атрибуты которых не будут пересекаться с пользовательскими настройками), то представится возможность куда более гибкого оформления, нежели элементами poem и epigraph.

Теперь о структуре. Моё мнение, что упаковка в zip-архив — удачное решение. Это залог быстрого доступа как к самой книге, так и к её элементам, а также меньшей нагрузке на устройство. Недостаток — создание временных файлов(хотя в недостатке памяти сейчас мало кто страдает). Разбивать контент по отдельным файлам следует на логические единицы. Например, на главы. Изображения хранить в отдельной папке «img», а стили в «style». Во всем остальном я согласен со структурой будущего fb3.

Заключение




У меня всё. На месте разработчиков FB и ePub я бы сделал именно так, как я описал чуть выше. Такая структура мне кажется логичной и очевидной. Но не смотря на это, она не такая. Почему? Очень жду вашим критических замечаний и комментарий по поводу изложенного.

This entry passed through the Full-Text RSS service — if this is your content and you're reading it on someone else's site, please read the FAQ at fivefilters.org/content-only/faq.php#publishers.


Комментариев нет:

Отправить комментарий