Nomad Reader, чтение epub/fb2/fb2.zip [версия 0.10.4 от 10.02.12]
Goto page 1, 2, 3 ... 28, 29, 30  Next
 
Libroom Forum IndexBarnes&Noble
AuthorMessage

Nomad1
Developer

Developer



Joined: 13 Sep 2010
Posts: 1721



Posted: 14.02.2011 17:11    

Представляю на ваше обозрение собственную EPUB/FB2 читалку для Nook, Nook Touch и Android вцелом.

Лирика
Подход к разработке кардинально отличается от именитых Cool Reader, FBReaderJ и др. - во главе угла именно комфортное чтение книг, а не поддержка максимума форматов и настроек. Как следствие, сейчас не отображаются таблицы, картинки и формулы, не поддерживаются CSS в EPUB, а об 1в1 идентичном компьютеру изображении нет и не будет речи. Кому такой подход не нравится - лучше дальше не читать.
Программа использует стандартные стредства Android, без C++/JNI кода и внешних библиотек, потому имеет небольшой размер (~85 кб в версии 0.4, 110 кб в версии 0.5-0.8 для Nook) и широкий охват оборудования (Андроид 1.5-3.1 в полной версии).
Минимум настроек, полноэкранный режим, небольшое время загрузки. Конечно же бывают баги форматирования (не забываем, это еще альфа!), могут быть вылеты, а общее количество страниц программа пытается "угадывать" и получается не всегда идеально.

Особенности программы:
- чтение книг из файлов .epub, .fb2, .fb2.zip;
- форматирование по ширине страницы;
- поддержка переносов в русских текстах *;
- поддержка базовых стилей шрифтов (заголовки, курсив и пр.);
- поддержка шрифтов Droid и Driod Sans из Android;
- поддержка встроенных в EPUB шрифтов;
- поддержка внешних TrueType шрифтов **;
- псевдо-утолщенный режим для шрифтов без -bold файлов (например, EPUB с flibusta);
- полноэкранный режим чтения с индикатором батареи;
- поворот изображения на 90 и 270 градусов (на Android устройствах добавляется еще 180 градусов);
- полоса чтения с засечками глав;
- навигация по главам;
- регулировка контрастности шрифтов;
- очень быстрое листание на Nook с ядром старше 1.5;
- очень быстрое листание на Nook Touch;
- собственная формула для определения количества страниц (будет еще не раз правиться);
- компенсация соотношения экрана на устройствах EPad/Flytouch (у них разрешение 800/480 = 1.66, а физический размер 155/86мм = 1.80);
- инвертированный ночной режим и настройки цвета;
- листание разными способами - жестами и кнопками на Nook, нажатием на край экрана и клавишами Volume Up/Down на других устройствах;
- на не-Nook устройствах меню показывается и убирается по нажатию клавиши Menu, имеет собственный интерфейс;
- подстройка положения текста на странице для одинаковых отступов сверху/снизу и др. особенностей;
- интерфейс на английском, русском и украинском языках;
- расширенное меню настроек, вызываемое долгим нажатием на пункт Settings;
- отображение картинок в книгах;
- максимально точное сохранение позиции чтения;
- листание в любом направлении;
- поддержка двунаправленного письма (Иврит, арабский, Урду, Фарси и др. языки);
- поддержка сносок в FB2 книгах и частично в EPUB;
- всякое разное, о чем наверняка забыл написать Smile

* Программа расставляет т.н. алгоритмические переносы в русских текстах, без использования словарей, что дает не идеальную точность, но при этом учитываются некоторые правила типографской верстки и общей читаемости текста: не оставлять "не" в начале строки, не отрывать две буквы длинного слова, по возможности не разрывать страницу переносом и пр. Общий алгоритм подсмотрен в проекте Foliant, а затем доработан так, как мне показалось нужным. Не хочу никого обидеть, но недавно попавшийся скрин CR показался мне примером того, как можно, но не нужно ставить переносы.
** Шрифты читаются из папки /system/media/sdcard/my fonts/. При этом сканируются все подпапки и анализируются все TTF файлы. На других Андроид устройствах читается папка /sdcard/fonts

Тестирование
Программа еще в альфа версии, а значит не все запланированные возможности еще реализованы, да и всех возможных устройств для проверки у меня нет. Тестировалось все на Nook с Андроидом 1.5 и 2.1, Nook Touch, HTC Desire, а также на китайце Flytouch с 1.6 и 2.2. Буду рад отзывам о тестах на других устройствах, особенно с небольшими экранами - там могут не помещаться элементы дизайна/меню на экране.

Баги и недоработки
Их не много, но они есть и будут правиться:
- смешение стилей (курсив/нормальный и пр.) в одной строке приводит к некрасивому форматированию и потенциальным ошибкам;
- в заголовках ставятся переносы, да и просто заголовки на несколько строк смотрятся не очень хорошо;

Не реализованные возможности
Эти вещи еще в разработке и пока они не сделаны, из альфа стадии мы не выйдем:
- закладки и переход по ним;
- точный переход на номер страницы;
- форматирование по правому краю и по центру;
- отображение сносок/ссылок (в процессе тестирования);
- выделение текста для сохранения/гугления/перевода и пр.;

Скриншоты




Ссылки и установка
Версия 0.10.1 от 04.02.12 для Nook 1st:
http://runserver.net/temp/NomadReader.Nook.apk

Версия 0.10.4 от 10.02.12 для всех остальных устройств (включая Nook Touch и Nook Color):
http://runserver.net/temp/NomadReader.apk

Страница на Android Market:
https://market.android.com/details?id=net.runserver.textReader

Страница на форуме 4pda.ru:
http://4pda.ru/forum/index.php?showtopic=242002


Установка очень проста - .apk файл ставим в систему через adb или файловые менеджеры. Mime типы прописаны так, чтобы epub/fb2/fb2.zip файлы просматривались этим ридером. В случае конфликта будет показано меню для выбора программы.
Для удаления через adb можно сделать так:
Code:
adb uninstall net.runserver.textReader

Критичные баги (препятствующие чтению, вылеты и пр.) буду рад видеть вместе с логами (результатом adb logcat после вылета) на почте g.a@ua.fm

P.S. Android версия читалки победила в пользовательском голосовании в конкурсе HTC Ukraine в 2011:
http://bit.ly/k2bmkz
_________________
Twitter: @NomadRunserver


Last edited by Nomad1 on 10.02.2012 23:07; edited 26 times in total
 
View user's profile ^

s1lent
Искушенный участник форума

Искушенный участник форума



Joined: 24 Jul 2010
Posts: 43



Posted: 14.02.2011 18:28    

Хотелось бы иметь возможность выбирать размер шрифта как в fbreader'е: от 10 до 42 с шагом в 2 пункта. Ну или что-нибудь похожее на это, а не просто small, large и т.д., потому как при смене шрифта со small на extra large высота букв почти не меняется.

И сейчас сразу же наткнулся на
Quote:
- не всегда корректно определяется кодировка и файлы с 1251 могут отображаться неверно;
так что пока для меня эта версия не слишком юзабельна Smile

Понравились иконка заряда батареи и прогресс чтения в заголовке Smile Было бы вообще круто, если текущий прогресс чтения книг отображался прямо на книжной полке в списке всех книг. Эх, мечты-мечты %)
 
View user's profile ^

Nomad1
Developer

Developer



Joined: 13 Sep 2010
Posts: 1721



Posted: 14.02.2011 18:33    

s1lent wrote:
Хотелось бы иметь возможность выбирать размер шрифта как в fbreader'е: от 10 до 42 с шагом в 2 пункта

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

s1lent wrote:
И сейчас сразу же наткнулся на
Quote:
- не всегда корректно определяется кодировка и файлы с 1251 могут отображаться неверно;
так что пока для меня эта версия не слишком юзабельна

Если не сложно - хотябы один такой файл на почту, для отладки. Я эту особенность заметил на 2-страничном документе, когда версия уже была готова и выложена, потому не стал перекурочивать все.

s1lent wrote:
Было бы вообще круто, если текущий прогресс чтения книг отображался прямо на книжной полке в списке всех книг

в далекой перспективе - почему бы и нет? но пока чуть другие приоритеты
_________________
Twitter: @NomadRunserver
 
View user's profile ^

igorvinograd
Активный участник форума

Активный участник форума



Joined: 24 May 2009
Posts: 219



Posted: 14.02.2011 18:38    

Nomad1
Открыл из твоей полки книгу, которую читал ранее, ничего не спросила, открылась в самом начале.
Как узнать на какой странице я был и как попробовать открыть эту же книгу прежним ридером, ведь я ее ранее открывал через "последние документы" в твоей полке ?

Posted after 4 minutes 44 seconds:


Last edited by igorvinograd on 14.02.2011 18:58; edited 2 times in total
 
View user's profile ^

Nomad1
Developer

Developer



Joined: 13 Sep 2010
Posts: 1721



Posted: 14.02.2011 18:53    

igorvinograd
в последних бетах полки есть баг - для просмотра сначала выбираются вьюеры с прописанными Андроид свойствами, а потом уже нативные Нуковые. Соответственно, старые epub и fb2 ридеры были прописаны только как Нуковые. Та же проблема была с VuDroid и PDF файлами. В результате я поставил, чтобы сначала проверялись Нук-программы, но новую полку еще не выкладывал, т.к. другие баги не поправил.

Варианты решения:
- удалить ридер и открыть старым Smile
- поставить чуть более новую версию полки, которая будет спрашивать: http://217.20.163.111/nookFileBrowser.apk
- найти страницу руками - листанием, все-равно колиечество страниц в разных читалках совпадать не будет;
_________________
Twitter: @NomadRunserver
 
View user's profile ^

igorvinograd
Активный участник форума

Активный участник форума



Joined: 24 May 2009
Posts: 219



Posted: 14.02.2011 18:57    

Nomad1

Nomad1 wrote:
- поставить чуть более новую версию полки, которая будет спрашивать: http://217.20.163.111/nookFileBrowser.apk


а ее не ты еще не выкладывал на обозрение? у меня была последняя (вроде)
как ее переставить по ADB ?


Last edited by igorvinograd on 14.02.2011 19:11; edited 1 time in total
 
View user's profile ^

Nomad1
Developer

Developer



Joined: 13 Sep 2010
Posts: 1721



Posted: 14.02.2011 18:58    

igorvinograd
не выкладывал, потому что не разбирался еще с багами по fb2 файлам, которые ты скидывал.
переставить так:
Code:
adb push nookFileBrowser.apk /data/app/net.runserver.fileBrowser.apk

_________________
Twitter: @NomadRunserver
 
View user's profile ^

igorvinograd
Активный участник форума

Активный участник форума



Joined: 24 May 2009
Posts: 219



Posted: 14.02.2011 19:11    

Nomad1
в режиме 90 CW , листает вперед кнопкой "назад" !
в режиме 90 ccw нормально
 
View user's profile ^

Nomad1
Developer

Developer



Joined: 13 Sep 2010
Posts: 1721



Posted: 14.02.2011 19:34    

igorvinograd
именно кнопкой, или жестом?
я делал так, чтобы листало в ту сторону, куда нарисована стрелка. т.е. в 90 CW листает стрелкой, которая смотрит "вниз", это как раз <. Если так неудобно - подумаем о пункте в опциях, но вообще я хочу, чтобы настроек было как можно меньше..
_________________
Twitter: @NomadRunserver
 
View user's profile ^

igorvinograd
Активный участник форума

Активный участник форума



Joined: 24 May 2009
Posts: 219



Posted: 14.02.2011 20:01    

Nomad1 wrote:
которая смотрит "вниз",

а-а вот оно как.
надо привыкнуть
 
View user's profile ^

Nomad1
Developer

Developer



Joined: 13 Sep 2010
Posts: 1721



Posted: 14.02.2011 20:10    

у меня вообще кнопки "вперед" уже растрескались, потому такой режим листания оказался даже удобнее. но действительно, если неудобно - можно поменять.
тут вопрос другой стоит - имеет ли вообще право на жизнь эта читалка и как ее воспримет общественность )
_________________
Twitter: @NomadRunserver
 
View user's profile ^

igorvinograd
Активный участник форума

Активный участник форума



Joined: 24 May 2009
Posts: 219



Posted: 14.02.2011 21:01    

[b]Nomad
мне нравится Very Happy
еще сноски внизу страницы и ей цены не будет Very Happy
 
View user's profile ^

Nomad1
Developer

Developer



Joined: 13 Sep 2010
Posts: 1721



Posted: 14.02.2011 21:15    

igorvinograd
с сносками пока думаю. это ведь надо откусить от страницы кусок определенного размера. как вариант, могу по-быстрому сделать их отображение на тачскрине, но это полу-мера. но то, что сноски будут сделаны - это 100%
_________________
Twitter: @NomadRunserver
 
View user's profile ^

g61
Недавний участник форума

Недавний участник форума



Joined: 04 Dec 2010
Posts: 14



Posted: 14.02.2011 21:44    

Отличное начинание, Nomad1!

Еще было бы супер, если б можно было верхний заголовок отключать, или максимально уменьшить - слишком много места отъедает. А проценты, время и часы совместить с прогрессом.
 
View user's profile ^

igorvinograd
Активный участник форума

Активный участник форума



Joined: 24 May 2009
Posts: 219



Posted: 14.02.2011 22:02    

Nomad1
Nomad1 wrote:
с сносками пока думаю. это ведь надо откусить от страницы кусок определенного размера

не наждой же странице сноски, и не всегда одного размера они бывают, то 1 строка, а иногда по пол-страницы или даже более.
Но это ведь нормально, так в любой бумажной книге сверстано

Posted after 6 minutes 53 seconds:

заметил, что заголовки глав верстаются не по центру, а с "красной строки"
 
View user's profile ^

Nomad1
Developer

Developer



Joined: 13 Sep 2010
Posts: 1721



Posted: 14.02.2011 22:52    

igorvinograd
простой пример: если текст с сноской в последней строке - что с ним делать? другой пример: текст со сноской в нижней половине страницы, но сноска сама будет размером с пол-страницы и текст банально не поместится. пока я все еще не могу сформулировать для себя, как это отображать..

igorvinograd wrote:
заметил, что заголовки глав верстаются не по центру, а с "красной строки"

верно. и еще в них могут быть переносы, что не очень правильно. об этом я и писал в первом посте, что заголовки еще требуют работы, так же как и эпиграфы.

g61
если честно, то там не так и много забирается - 35 пикселей + 5 на отступ. я подумаю на счет варианта упрощения/уменьшения, но это уже будет в ущерб визуальной гармоничности.

Posted after 2 minutes 49 seconds:

p.s. если кто из дизайнеров/фотошоперов придумает как в 4х цветах (белый, черный и два серых) нарисовать красивую батарейку с полоской и надписью внутри - пишите, поставим. я пока свою рисую просто в несколько прямоугольников..
_________________
Twitter: @NomadRunserver
 
View user's profile ^

igorvinograd
Активный участник форума

Активный участник форума



Joined: 24 May 2009
Posts: 219



Posted: 14.02.2011 23:01    

g61
g61 wrote:
слишком много места отъедает

а мне нравится-часы и батарейку хорошо видно, не надо отвлекаться
 
View user's profile ^

Nomad1
Developer

Developer



Joined: 13 Sep 2010
Posts: 1721



Posted: 14.02.2011 23:23    

выложил версию 0.4.2, в которой теперь нормально подхватывается кодировка win-1251 и другие.
_________________
Twitter: @NomadRunserver
 
View user's profile ^

g61
Недавний участник форума

Недавний участник форума



Joined: 04 Dec 2010
Posts: 14



Posted: 14.02.2011 23:43    

Подскажите часы где-то отдельно настраиваются? Как сделать так, чтобы они показывали то же время, что в нуковском ридере?
 
View user's profile ^

CristobaL
Бывалый участник форума

Бывалый участник форума



Joined: 08 Sep 2010
Posts: 130



Posted: 15.02.2011 00:56    

1.Часы. Оставить или заполнение графикой или цифры. Из 4 цветов при наложении в любом случае получится каша. Проценты без батарейки – информативнее, но массы потребуют наглядности.
2.Время идет на минус 4 часа от установленного в системе.
3.Процент от прочитанного после заглавия следует убрать. Эта информация вторична и её можно узнать из полосы прогресса внизу.
4.Вместо процентов от прочитанного следует ввести чудесную типографскую форму записи: ‘Title_name’. ‘Chapter_name’ (Да, не все книги имеют осмысленное название глав, но хотя бы как опция эта возможность должна быть).
5.Возможность убрать с экрана полосу прогресса и индикатор страниц была бы уместна. Всё же многим эта информация не нужна вовсе.
6.Названия глав в пункте меню ‘Go to’ не читаются. Вместо них ‘Ch1..n’
7.Таймер на возвращение в главное меню программы. Программа должна возвращаться в главное меню через N секунд, а лучше после двух листаний книги.
8.Знаю, что альфа, но перемещение в начало главы после смены шрифта (без предуприждения) – неожиданно неприятно для пользователя.
9.Номад, а теперь о личном. Закладки, мои милые, любимые закладки. Не повторяй ошибок B&N, сделай, чтобы при создании закладки в её названии писалась первая строка открытой страницы хотя бы. Если я открыл книгу через месяц после прочтения для поиска цитаты, то блуждание в бесконечных ‘Page XX’ займет пропасть времени. (Если ты готов слушать, могу отдельно рассказать, как я представляю себе идеальный механизм создания закладок на Нуке).
10.Выравнивание заголовков - вкусовщина. Я согласен с выравниванием по левому краю, которое предложил ты. НО! Эпиграфы из этой книги (http://flibusta.net/b/191847) отображаются некорректно. Каждая строчка – новый абзац. Без пустой строки в конце.
 
View user's profile ^
Libroom Forum IndexBarnes&NobleAll times are GMT + 4 Hours
Goto page 1, 2, 3 ... 28, 29, 30  Next
Page 1 of 30

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

© Libroom, 2021