Читалка fb3-файлов на Qt Creator
Некоторое время назад я опубликовал проект fb2-читалки, в процессе работы над которой я узнал, что данный формат является морально устаревшим. Поэтому я начал осваивать новые форматы и остановился на fb3 — формате-приемнике fb2. В процессе работы я столкнулся с некоторыми проблемами, которые не решены в полном объёме. К тому же, несмотря на то, что книги в fb3 уже появляются, формат окончательно не утверждён. Хотя книги уже появляются. Поэтому я решил опубликовать программу в текущем виде и рассказать о своих достижениях и неудачах. Впоследствии я планирую новую версию с поддержкой формата epub.
Файл fb3 является zip-контейнером, в котором находятся элементы книги. Поэтому я реализовал следующий алгоритм. Распаковываем все файлы во временную папку и считываем из неё все необходимые элементы.
Типовой файл содержит:
Папка fb3 содержит основную информацию, в частности два ключевых элемента body.xml — текст книги и description.xml — аннотацию книги, которые соответствуют основным блокам файла fb2. Папка img содержит иллюстрации книги.
Структура body.xml за некоторыми поправками структуре fb2. Поправки направлены на расширение функциональности и упрощение структуры. Добавлены тэги ol, ul, li для создания списков. blockquote – цитата, em – акцентирования текста (курсив), pre – блок предварительно форматированного текста идентичные html. Тэги underline (подчёркнутый) и spacing (разряженный) можно реализовать следующими заменами:
img_fb3 наполняется так
Кроме того, остались некоторые тэги предназначение которых мне до конца не понятно:
Открываем zip-архив
Первоначально для разархивации я планировал использовать программу 7z. Но этот вариант отпал, когда я узнал, что реализовать распаковку файлов можно с помощью библиотеки zlib и интерфейсов из библиотек zipreader_p.h, zipwriter_p.h и zip.cpp, которые можно скачать вместе с другими исходниками Qt. В конце концов, я узнал, что эти библиотеки входят и в распространяемые версии Qt (модуль gui-private). Кстати такой приватный модуль-двойник есть у каждого основного модуля. И как гласит предупреждение в каждом из приватных заголовочных файлов:
(This file is not part of the Qt API. It exists purely as an implementation detail. This header file may change from version to version without notice, or even be removed).
Итак, функция UnZip(QString name, QString path) помещает содержимое архива name в папку path. В качестве временного хранилища я предлагаю использовать папку «dmreader» создаваемую в каталоге для хранения временных файлов QStandardPaths::standardLocations(QStandardPaths::TempLocation).at(0).
Реализация распаковки архива
Заключение
Написанная программа не претендует на полную функциональность при чтении fb3 файлов. Но для того чтобы открыть текст, посмотреть его и сохранить в html, который можно обрабатывать в большом количестве редакторов она отлично подходит. Приятного чтения.
Путеводитель по программам для чтения книг
Несмотря на популярность PDF, этот формат документов нельзя назвать универсальным. Более того, если говорить о массовых электронных книгах, то они, как правило, хранятся в FB2, EPUB, AZW или других подобных форматах. Поэтому у многих пользователей возникает вопрос, какой программой открыть электронный документ на десктоп-платформе. В этом обзоре предлагается 10 альтернатив и дополнений к Adobe Reader.
STDU Viewer
Программа-универсал, которая поддерживает большинство распространенных форматов электронных книг, таких как PDF, DJVU, FB2, MOBI, AZW и др. Также возможен просмотр документов в ZIP-архивах без распаковки.
Интерфейс STDU Viewer многовкладочный. Навигационная (боковая) панель содержит функции просмотра оглавления документа, поиск, подсветку, закладки и эскизы. Эскизы страниц обрабатываются очень быстро. Это, прежде всего, относится к PDF и DJVU.
Масштаб страницы изменяется по ширине/высоте либо по размеру. Режимы просмотра (отображение разворотом или страницей) можно менять с помощью клавиш Ctrl + Alt + [1, 2, 3] либо через меню «Вид». В меню «Вид → Настройки» можно установить яркость, контраст и гамму для просматриваемых страниц. Эта опция бывает полезна в тех случаях, если текст на странице виден плохо (часто такое бывает в случае с DjVu).
Есть отдельные настройки для форматов FB2, MOBI/AZW, EPUB, где можно настроить отображение шрифтов, включить сглаживание, изменить интервалы. Однако возможности включить сглаживание текста для PDF не предоставляется. Кроме того, не нашлось опции для изменения фона страниц.
Поддерживается экспорт (в том числе и массовый) страниц в графический формат. При этом можно указать нужные страницы, разрешение, формат (BMP, GIF, JPG или PNG).
Поиск по документу делится на быстрый и расширенный. В первом случае поиск осуществляется, начиная с текущей страницы, во втором — результаты поиска отображаются как список.
Adobe Digital Editions
Помимо широко известного просмотрщика Reader, Adobe предлагает программу для чтения электронных книг. Digital Editions поддерживает синхронизацию с перечисленными по ссылке устройствами. Форматов всего два — PDF и EPUB.
В библиотеке книги можно упорядочить по книжным полкам. Здесь файлы сортируются по заголовку, издателю, количеству страниц и другим характеристикам.
Теперь касательно чтения книг. Функций — минимум. В боковой панели нет просмотра эскизов, доступны закладки, комментарии и просмотр оглавления. Настройки отсутствуют.
Из опций ощутимо отсутствие режимов чтения: больше, чем одну страницу, в окне расположить нельзя. Документы PDF высокого разрешения ощутимо подтормаживают на той же конфигурации, где Adobe Reader работает без замедления. Причем если в Reader можно настраивать разрешение и сглаживание шрифтов, здесь такая возможность не предусмотрена.
Digital Editions интегрируется с программами для пользователей с ослабленным зрением NVDA и JAWS.
WinDjView
Если для чтения EPUB или PDF найти программу несложно, то с DjVu все гораздо сложнее вследствие отсутствия какой-либо конкуренции и удобных программ вообще. Одна из лучших программ для чтения DjVu — WinDjView.
В боковой панели на выбор две вкладки — «Страницы» и «Содержание», причем последний раздел не отображается, если в документе нет оглавления. Эскизы страниц обрабатываются очень быстро.
При просмотре можно быстро выбрать режим чтения: расположение (разбивка на страницы), масштаб. Также доступны непрерывный и одностраничный режимы просмотра. Для перехода в полноэкранный режим кнопка не предусмотрена, но есть сочетание клавиш «Ctrl + L». Практически все нужные инструменты, коих для работы с DjVu не может быть много, — под рукой.
Настройки содержат все необходимые опции по просмотру, в том числе настройки полноэкранного режима. Во вкладке «Отображение» можно настроить стиль оформления страниц, параметры сглаживания, инвертировать цвета. Благодаря этим опциям есть шанс улучшить читаемость текста, скажем некачественно отсканированного.
В формате DjVu текст не всегда хранится отдельным слоем. Как решение проблемы, в WinDjView есть возможность выделения участка с сохранением его в графическом формате (PNG, GIF, JPG и т. п.). В меню «Файл» доступен экспорт текста. Он возможен в том случае, если текстовый слой встроен в документ. Опции пакетного экспорта всех или выбранных страниц нет.
Интерфейс переведен на русский, также в наличии есть украинский. Стоит упомянуть, что у WinDjView есть возможность использования контекстного переводчика.
Mobipocket Reader Desktop
Программа, скромно именующая себя Reader, по совместительству еще и функциональный конвертер. В меню «File → Open» на выбор доступно всего 2 формата, но для импорта («Import») их куда больше.
Программа устроена просто и интуитивно, для добавления в библиотеку достаточно выделить и перетащить в Mobipocket Reader файлы. После чего они будут переконвертированы в удобочитаемый формат для внутреннего хранения или переноса в электронную книгу (кнопка «Send»).
Во время чтения можно переключиться в более удобный режим, например уменьшить разбивку до 1-2 колонок, изменить шрифт. Дополнительно во вкладке «Reading» в настройках можно изменить размеры отступов, межстрочный интервал, цвет фона и т. п. Остальные вкладки, как показала практика, практически бесполезны.
Удобная каталогизация не предусмотрена, хотя бедной ее тоже не назовешь. С одной стороны, имеются удобные возможности для импорта, фильтрация по издателю, автору, алфавиту. С другой — нет самой базовой опции: создания категорий.
FBReader
Часто разработчики портируют приложения на мобильную платформу, в данном случае наоборот: впечатление, что мобильная версия перекочевала на десктоп. Вообще говоря, интерфейс нетипичен для настольного просмотрщика: в нем нет строки меню и дополнительных панелей, в том числе и боковой.
Одна из примечательных возможностей FBReader — интеграция с сетевыми библиотеками, в которых можно искать и скачивать книги через интерфейс программы. Поиск можно производить по названию, автору, описанию и другим данным. Кроме сетевых библиотек, безусловно, есть локальная. Сюда попадают все добавленные пользователем файлы. Их можно сортировать по тем же критериям, что и при поиске в сетевых библиотеках.
В FBReader достаточно гибкие настройки, особенно по части оформления. Однако пользователи мобильной версии программы заметят, что в настольной редакции нет индикатора пролистывания, эффектов переворота страницы и других важных визуальных особенностей. Ограничения коснулись и файловых форматов: так, десктоп-версия, в отличие от мобильной, не поддерживает PDF и DJVU.
Sony Reader
На первый взгляд, программа для чтения электронных книг Sony производит приятное впечатление. Как минимум, дизайн смотрится свежо и оригинально по сравнению с другими «читалками».
Для организации каталога достаточно импортировать папку с книгами через меню «Файл» либо перетянуть нужные книги в окно программы. Можно создавать коллекции (книжные полки), доступна сортировка.
Однако в режиме чтения программа показывает себя с худшей стороны. Текст читается с трудом, и переключение в полноэкранный режим или увеличение шрифта не спасают ситуацию. Технология сглаживания, используемая Sony, также вызывает вопросы.
Вместо привычных панелей Sony Reader повсеместно использует выпадающие (и при этом подтормаживающие) меню, из-за чего тот же поиск неудобно использовать. Нестабильно работает даже выделение текста: для того чтобы скопировать фрагмент, нужно сделать несколько попыток его «ухватить». В настройках 5 опций, среди которых нет ни одной, относящейся к чтению.
Одним словом, здесь мы имеем дело с достаточно функциональной программой, однако, ввиду нестабильности и сырой реализации, — увы, малополезной. Обладателям электронных книг Sony пригодится лишь одна функция — синхронизация Reader с устройством.
Calibre
Calibre — конвертер, равно как и Mobipocket Reader Desktop, хорошо знакомый пользователям электронных книг. Тем не менее, есть у программы и другая сторона — возможность чтения документов. По количеству входных форматов ей сложно подобрать конкурента.
Главное окно Calibre выполняет роль библиотеки. Здесь доступна сортировка по таким привычным критериям, как авторство, серии, издатели и т. п. Чтение книг возможно через приложение «Просмотрщик электронных книг». Для перехода в этот режим достаточно дважды щелкнуть по заголовку книги в библиотеке.
Главный очевидный минус — подтормаживающий интерфейс. Видимо, это связано с особенностями библиотеки графического интерфейса Calibre. Наиболее заметна «неповоротливость» при открытии больших книг или при переходе в полноэкранный режим и назад.
Автор программы не предусмотрел удобную панель для быстрого просмотра содержимого, поэтому эскизы недоступны. С чтением PDF наблюдаются большие проблемы: многие книги отображаются некорректно, зачастую доступна только титульная страница документа.
В целом, визуальная часть не вызывает нареканий. Все цвета и шрифты легко перенастроить на свое усмотрение. Помимо того, управлять стилем страниц можно посредством таблицы стилей CSS в настройках программы.
Kindle
Kindle — узкоспециализированный просмотрщик. Название может ввести в заблуждение. Дело в том, что программа не предназначена для синхронизации контента с одноименными устройствами — она всего лишь эмулирует Kindle программно. Доступно чтение формата AZW, причем книги можно загружать только с Amazon.
Программа не требует особой настройки. Единственный этап, который нужно пройти — вход под своими учетными данными Amazon, после чего все купленные книги будут синхронизированы с библиотекой.
Режим чтения по своему удобству приближен к аппаратному Kindle. Можно настроить яркость, переключиться в один из трех режимов (белый, сепия и черный), изменить количество колонок, отрегулировать размер шрифта. Поменять гарнитуру нельзя.
Боковая панель предусматривает навигацию по содержанию, закладкам, а также поиск. Через контекстное меню можно вызвать переводчик, добавить заметку или закладку.
Cool Reader 3
Одна из наиболее известных и старейших программ для чтения электронных книг. Ее профиль — чтение мобильных форматов. DJVU и PDF обделены вниманием.
В функциональном плане Cool Reader не вызывает нареканий, кроме отсутствия библиотеки. Масштабирование, смена режима чтения, переключение колонок присутствуют. Предусмотрены также навигация по содержанию, закладки.
Интерфейс основан на библиотеке QT, «родной» среде Linux. В Windows при чтении наблюдаются проблемы в виде неправильного отображения шрифтов: нет нормального сглаживания, присутствует ограниченный набор гарнитур. В случае с многоязычным документом текст отображается вразнобой из-за различной отрисовки одного и того же языка для кириллицы и латиницы. Настройки не спасают Cool Reader от вышеназванных проблем.
ICE Book Reader
Пусть ICE Book Reader и не может привлечь удобной оболочкой, зато функциональность программы радует. Библиотека позволяет оперировать большими объемами данных, организовывать книги в коллекции, искать дубликаты, сортировать по различным критериям (у ICE Book Reader их больше, чем где-либо). Правда, нужно отметить очень замедленное сканирование директорий, в которых содержится более десятка файлов.
Отображение страниц по умолчанию (в частности, шрифт Comic Sans) не располагает к комфортному чтению, но это легко исправить. Из дополнительных визуальных опций —раскрашивание первых букв параграфа. Три режима просмотра, пять режимов чтения, среди которых плавная прокрутка и автоматическое листание. Скорость можно отрегулировать индивидуально, прочитав 2 страницы текста.
Fb3 что это за формат чем открыть
FB3 Файлы: Что это такое и как его открыть
Если вы получили файлы FB3 и не можете их открыть по какой-либо причине, и вы хотите знать, что это такое и что с этим делать, продолжайте читать!
Файлы FB3 обычно представляют собой тип двоичного файла, используемого определенным программным обеспечением, и многие программные пакеты могут совместно использовать общее расширение файла. В случае файлов с расширением FB3 может быть открыт популярный программный пакет, такой как Binary Data.
Как открыть файл FB3
Как вы уже знаете, если у вас есть Binary Data, вы можете просто дважды щелкнуть по своему FB3 и открыть его. Но что, если ваше программное обеспечение не открывает файл?
Обратите внимание, что расширения FB3 не могут быть ограничены только Binary Data. Вы всегда можете выполнить поиск Google, чтобы найти другое программное обеспечение, которое использует файлы FB3, и загрузить его, чтобы попытаться открыть файл.
Еще не повезло? Свяжитесь с разработчиком названия программного обеспечения, чтобы узнать, могут ли они помочь. Если ваше программное обеспечение не имеет идентифицированного разработчика в приведенной ниже таблице, быстрый веб-поиск названия программного обеспечения должен дать вам некоторые подсказки о том, с кем связаться.
Спроси себя: Всегда ли я хочу пройти этот процесс, когда получаю необычный файл? Должен ли я загружать новое программное обеспечение каждый раз, когда у меня нет программного обеспечения, связанного с файлом? Если нет, загрузите универсальный просмотрщик файлов (File Magic), чтобы открыть сотни разных типов файлов с помощью одной программы.
| Программного обеспечения | разработчик |
|---|---|
| Binary Data | Microsoft Developer |
Рекомендуем
Особенности формата FB2: чем открыть файл электронной книги
В статье список бесплатных ридеров для компьютера и смартфона на Android или iOS
Любители электронных книг хотя бы раз сталкивались с форматом FB2 и не понимали, как его открыть на компьютере. Для чтения FB2 доступно множество бесплатных программ, которые также отлично подойдут для текстовых файлов книг всех форматов. В нашей статье рассмотрим популярные «читалки» для ПК, планшетов и электронных книг на разных ОС.
Содержание
Описание формата
Документы с расширением FB2 помимо текста с присвоенными тегами содержат изображения, вложения и структурную разметку. Проблем с открытием формата на электронных книгах не возникает – соответствующее ПО установлено в них изначально. А вот при чтении с планшета или ПК на ОС Windows придется повозиться.
Просмотр FB2 на ПК
Для Windows разработаны десятки программ, сложнее обстоят дела с macOS и Linux. Чем читать FB2 скачанные на компьютер с данными операционными системами? Отметим популярные бесплатные утилиты и расширения:
Альтернативные решения – использование онлайн-конвертеров, с помощью которых FB2-файлы переводятся в читаемые для macOS и Linux форматы.
Некоторые капризные ридеры могут не запускаться на семерке, поэтому используйте программы, совместимые с вашей операционной системой. Чем открыть FB2 на Windows 7:
Загрузите и установите одну из программ, после чего нажмите на файл правой кнопкой и выберите пункт меню «Открыть с помощью», далее в списке кликните на соответствующую программу. Обратите внимание: AlReader помимо чтения позволяет редактировать файлы в формате FB2.
Чтобы открыть FB2 на Windows 10, установите расширение из Microsoft Store или используйте отмеченные выше программы. Дальше алгоритм тот же: файл попытается открыться в стандартном редакторе, чтобы этого не произошло необходимо изменить программу для открытия по умолчанию. Для этого щелкните на документ правой кнопкой мыши, выберите пункт меню «Открыть с помощью», после чего кликните на загруженный ридер.
Открыть FB2 онлайн
В интернете достаточно сервисов, способных открыть файл FB2 онлайн, представляем самые удобные из них:
Еще один вариант – установка расширения FB2 Reader в браузер, его поддерживает Google Chrome, Firefox и многие другие. Данное расширение импортирует файл для чтения на отдельной вкладке.
Открыть FB2 на Android
Для тех кто не знает как читать FB2 на Android даём подсказку: «Play Книги» входит в базовый пакет предустановленных приложений системы. Если вы его уже попробовали, и оно вам не подходит, ловите самые популярные «читалки» для смартфонов и планшетов:
Открыть FB2 на iPhone
На iOS не густо с качественными ридерами, но нам понравилось приложение i2reader. Работает с большим количеством расширений: FB2, EPUB, DOC, DOCX, PDF (текст), RTF, HTML, и plain text. Поддерживает словари, автопрокрутку, автопереносы и многие другие удобства.
Новый формат книг FB3 и FB4. Это почти 3D, только для нищих
«Литрес» недавно объявил, что будет продавать книги в новом формате FB3. Смотрится, как угроза. Ну, или как истерично-хвастливые размахивания бледными кулачками. Когда я увидел эту новость, сказал себе: «Япооооооонские технологииии!». Ожидал какой-то реалистичности. Нового подхода. Но все оказалось иначе. Обо всем по порядку.
Чем отличается формат FB3 от FB2:
1. Первое и важное отличие в том, что цифра «3» как бы говорит нам: «Формат FB2 – это старье, бабкины подмышки, эпоха динозавров, а вот формат FB3 – это XXI век, неоновые огни, услужливые роботы, хитро выглядывающие из-за угла, модный формат, ну и т.д.». Ну, то есть, это стандартное давление на психику беззащитного читателя: «Читаешь в формате FB2 – Лохушка, читаешь в формате FB3 – Модная Няшка».
2. Теперь в формате FB3 можно будет все положить в контейнер. В какой именно пока непонятно. Возможно в тот, с помидорками на стенках, типа контейнер для еды. Пожрать, конечно, никто вам просто так бесплатно не даст. Но можете положить в виртуальный контейнер фото шашлыков и редиски, чтобы посмотреть, понюхать, пустить слюну. И, вроде бы как, поели и сыты.
3. Формат FB3 можно будет открывать на любом устройстве.
4. В контейнер для виртуальной еды можно будет положить школьные учебники. Так и не понял зачем. Гомоэротические фантазии разработчиков мне пока непонятны.
Хотелось бы посоветовать разработчикам другие улучшения для формата FB4.
1. Возможность прятать от самого себя купюру в 100 рублей (Яндекс.Денег) на какой-нить странице. Открыл такой – опа, да я же 100 рублей здесь прятал. Нажал на картинку купюры – она на счет кошелька упала. Иначе, нахера такая книжка, если в ней ничего нельзя спрятать. Это стопка бездушных листов бумаги. А так – копилка, что-то родное. Хомячье.
2. Сделайте так, чтобы листы после покупки старились. Ну, там, я не знаю, желтели, немного мялись от постоянного пользования. Чтоб было видно, что человек книгу читал. Что он умный. Что он ее любит и перечитывает.
3. Когда-то сделанные закладки пометьте следующим образом: пусть угол листа будет замят. Чтоб было видно, что здесь делали закладки, как бы вручную.
4. В мистических книгах, на самых острых и напряженных моментах добавляйте звук двух ударов по клавишам фортепиано. Это будет неожиданно. Читатель сразу вздрогнет.
Если вы не любите электронные файлы, а возбуждаетесь от бумаги, то вам лучше попробовать заказать следующие книги. Это типа мои. Издательство решило печатать их напрямую, в обход магазинов и без их наценок. Только тс-с.
Но предупреждаю заранее. Слышал, что они косячат с печатью или могут вам не то положить в посылку. Например, могут закинуть вам черновик еще неизданной книги Блейка Крауча на английском языке, кашемировый плед, альбом с марками или эротическое фэнтези, где эльфы с заячьей губой уже не играются на поляне с деревянным луком, а вполне накаченные и лапают грудастых ведьм, как немецкие сантехники. В любом случае, будет интересно узнать, что они вам пришлют.




















