Этот документ объясняет, как читать книги на мобильном телефоне с помощью программы TequilaCat BookReader.
BookReader понимает наиболее часто используемые форматы электронных книг, такие как RTF, TCR, MS Office, AdobePDF и т.д. Но BookReader оптимизирован под показ простого текста (пока), так что стили, цвета и всё такое из этих форматов не показываются (пока).
Этот документ объясняет, как использовать текущую версию на момент его последнего обновления – TequilaCat BookReader 2.2.8. С некоторыми ограничениями он применим и к более ранним версиям серии 2.x. Одни описанные фишки отсутствуют в более ранних версиях, другие – описаны вкратце, третьи – не описаны вообще, так как (надеюсь) самоочевидны.
Пожалуйста, изучите программу, меняя опции, нажимая телефонные кнопки и т.п.. Я пытался следовать откликам пользователей, чтобы обеспечить понятный стиль управления.
Да, TequilaCat – это я :) А программа – TequilaCat BookReader.
Книги создаются в формате JAR. Далее я часто использую слово JAR, чтобы обозначить файл Java -книги (это – одно и то же).
Так же, если надо, для каждого JAR файла создаётся соответствующий JAD файл. Это – короткий текстовый файл, содержащий описание своего JARфайла – имя, размер и ещё кое-чего. Некоторым телефонам требуется JAD файл, чтобы установить Java книгу, некоторым – нет.
Каждый Java файл, созданный оболочкой BookReader, содержит книжный текст, выбранные вами шрифты и программу BookReader, написанную на мобильной Java (так называемый мидлет), который и показывает текст книги в телефоне.
Главное окно шелла BookReader разбито на несколько частей.
Верхний левый угол позволяет выбрать модель вашего телефона и ввести имя книги.
Под ним находится панель задач, откуда вызываются все действия, возможные в оболочке BookReader. Пункты в ней сгруппированы. Первая группа действий работает с книгами и главами, вторая – с разными параметрами и настройками, и третья группа устанавливает шрифты, цвета и форматирование текста,
Клик мышой на пункте в панели задач вызывает соответствующую страницу настроек справа, и выполняет соответствующее действие .
Справа видна страница с элементами, опциями и кнопками, относящимися к действию, выбранному на панели задач.
Снизу окна – полоска с кнопками для основных действий: конвертировать книги, просмотреть помощь и выйти из оболочки-шелла BookReader.
Оболочка-шелл BookReader понимает наиболее часто используемые форматы
электронных книг: текст, RTF, Adobe Acrobat PDF, MS Office, PDB/PRC (книги для
Palm), HLP и HTML
. При создании Javaкниг они преобразуются в простой текст, и
цвета, стили шрифта и картинки на телефоне не отображаются.
Также шелл понимает часто встречающиеся форматы упакованных книг: ZIP, RAR, HA, ARJ. Когда вы добавляете такой архив, из него извлекаются книги всех известных шеллу форматов. Архивы могут быть упакованы один в другой: RAR может содержать ZIP, а ZIP – содержать PDF or PDB книги.
Так же в шелле есть авто-определение кодировки русских текстов, отключаемое для текстов на других языках.
Внимание: некоторые форматы требуют докачки, чтобы уменьшить размер инсталляции.
Чтобы добавить книги, вы можете кликнуть на пункте «Добавить книгу», или мышкой перетащить файлы из папки в окно шелла. При этом книги добавляются в список книг, и по необходимости автоматически разбиваются на главы.
Список книг организован как дерево, главы показаны как «подпапки» книг.
Если выделить мышой книгу или главу, их текст появится справа от списка глав. Большие книги долго открываются на старых компьютерах, поэтому сначала показывается только 20.000 букв книги или главы. Чтобы просмотреть книгу или главу целиком, надо кликнуть опцию «показать весь текст».
Когда вы закрываете шелл, все выбранные книги, разбивка на главы и выбранные параметры сохраняются до следующего раза.
Панель разбивки на главы расположена выше списка книг. В ней задается, как книга будет разбиваться на главы. Если авто-разбивка включена, каждая добавленная книга автоматически разбивается на главы. Впоследствии вы можете пере-разбить книгу вызовом «Переформатировать» слева в панели задач, или нажав маленькую кнопку «пере-разбить главы» рядом со списком заголовков.
Это – наиболее важный параметр разбивки на главы. В этом поле через запятую указываются начала строк, служащих заголовками глав, например «Пролог», «Глава», «Эпилог». По умолчанию, началами глав так же считаются цифры (римские и арабские) с точкой после них, например 12. или XXI.
Так же можно указать, что главы начинаются со строки, содержащей только число.
Если книга была изменена внешней программой, при переформатировании глав она перегружается с диска. Так что вы можете править книгу во внешнем редакторе, и переформатировать главы после каждого сохранения.
Иногда, если разбиение на главы не оптимально, вы можете объединять и переименовывать как главы, как и сами книги.
Для кrootых:
Список заголовков конвертируется в regexp, о чём нетрудно догадаться, заглянув в его конец J. Запятые заменяются на палки, всё помещается в скобки, и Глава,Пролог,Эпилог превращаются в ^((?:\d+$)| Глава,Пролог,Эпилог)
\d+$ добавляются в случае, если выбрано «Считать одиночные числа началами глав».
Если выбрано «Использовать regexps», то список заголовков никак не изменяется. Юзайте PerlRE, и да пребудет с вами Сила J
Самые важные настройки – сверху слева, это Модель телефона, Название книги в телефоне и Имя JARфайла.
Модель телефона должна соответствовать вашему аппарату. У каждого телефона – свои особенности, и выбор правильной модели очень важен.
Если ваша модель не указана, выберите другой аппарат той же марки. Если это не поможет, выберите наиболее общую модель – MIDP1.0 для старого аппарата или MIPD 2.0 для нового. MIDP – это версия Java в телефоне. Какую из них выбрать - вам подскажет описание вашего телефона.
Выбор Модели телефона влияет на некоторые опции, включая фичи, доступные только для определённых моделей. Так же выбранная модель определяет, как будет выглядеть текст на странице выбора шрифтов.
Название книги в телефоне – как Java книга будет называться в телефоне, в списка установленных Java приложений.
Если имя книги слишком длинно, или содержит не только латинские символы, телефон может отказаться её устанавливать. Если у вас проблемы с инсталляцией таких книг в телефон, попробуйте переименовать их латинскими буквами, ограничив размер 8-10 символами.
ИмяJAR файла – это имя создаваемых JAR файлов – Java книг. Если вы выбрали “Создавать каждую книгу в своей папке”, так же юбутет называться и папка.
“Настройки” задают, как и где будут создаваться Java книги: в заданной папке или рядом с исходной книгой. Так же можно защитить книгу в телефоне паролем.
После создания книги можно указать, открывать ли папку где создались книги, или запустить выбранную программу.
“Изменить оформление” позволяет выбрать иконки для создаваемых на компьютере папок с Java книгами, и для Java книг в самом телефоне.
“Установить параметры” устанавливает параметры Java книг. Самые важные – это Макс. размер JAR файла and Размер текстового блока.
Макс. размер JARфайла это максимальный размер JAR файла, допустимый для вашего телефона. Для некоторых аппаратов этот размер уже забит в шелл, а для некоторых вам придётся найти её самим.
Обычно допустимые размеры JARа - 50.000 байт и больше. Если вы задали максимальный размер JARа, а книга в него не помещается, шелл создаёт несколько JAR файлов допустимого размера. Эти файлы могу т устанавливаться по одному или все вместе.
Если вы не можете установить созданную книгу в телефон, и латинские буквы в имени не помогают, вероятно, JAR файл слишком велик для вашего аппарата. Обычно телефон при этом выводит ошибку “Bad Jar File” (неподходящий JAR файл) или “Jarfile too big” (JAR файл слишком велик).
Размер текстового блока – это размер куска текста внутри JAR файла. Звучит загадочно, но я попытаюсь разъяснить J. Когда книга преобразуется в Javaформат, исходный текст разбивается на несколько меньших кусков, для ускорения загрузки книги.
Для большинства телефонов подходящий размер – от 30.000 до 100.000 байт. Старые Siemens (45th 55thseries, и CF62) позволяют максимум 8.000.
Если размер текстового блока слишком мал, их количество увеличивается; в результате вырастает размер Java книг (степень сжатия коротких файлов хуже). Так же при считывании очередного куска в память телефон слегка (или не слегка) подтормаживает. Чем короче кусок, тем чаще читалка будет подтормаживать при чтении.
Если же размер текстового блока слишком велик, он может не поместиться в памяти. В этом случае произойдёт ошибка приложения при первом же чтении уже установленной книги. В этом случае попробуйте уменьшить размер текстового блока.
Ставить размер текстового блока меньше 8000 смысла нет - возможны ошибки.
Пункт “Переназначить клавиши” позволяет переназначить действия для кнопок телефона.
Изначально на странице назначения клавиш показываются кнопки, назначенные по умолчанию.
Вы можете переопределить назначенное действие или освободить кнопку, кликнув правой кнопкой мышки на таблице назначенных клавиш. В выпавшем списке кнопок выберите кнопку телефона, код кнопки или "-" для того, чтобы снять назначение этого действия. Так же вы можете удалить сбросить все назначения кнопок на настройку по умолчанию.
Вы можете назначать действия на стандартные кнопки (0-9, *, #, DIAL/джойстик и стрелки), и на «программируемые кнопки» (Softkeys). Последний пункт «Выбрать код…» в списке кнопок даёт возможность ввести код программируемой кнопки (они разные для каждой модели или производителя). Коды таких кнопок можно узнать в самой читалке - BookReader, запущенном на телефоне (Infomenu->Show key codes).
Пункт “Шрифты/страница” показывает список выбранных шрифтов. Там вы выбираете шрифты для книги и их свойства. Так же там есть пример текста, нарисованного выбранным шрифтом, с учётом опций форматирования и размера экрана телефона.
Пример текста может не полностью совпадать с реальным текстом, т.к. писать одно и то же 2 раза (на Java и на С++) у меня возможности нет. Но, по крайней мере, количество строк на экране совпадать будет J.
По умолчанию показывается некий абстрактный текст, но если вы выделите текст вашей книги в окне добавления книг, то он будет показан и на странице шрифтов.
Если BookReader знает про ваш телефон, вы увидите правильный размер экрана и возможно картинку своего аппарата. Если аппарата вашей модели в списке нет – не расстраивайтесь: вводить размер экрана в шелле нужно только, чтобы прикинуть размер шрифта. Сам Java BookReader в большинстве случаев берёт эти данные из телефона. Кроме разве что некоторых Samsung и старых Motorola.
Если у вас именно такие телефоны, и внизу экрана – белая полоса, попробуйте ввести правильный размер экрана вашего телефона (из Интернета или документов к телефону) и выбрать опцию «Убирать белую полосу».
Также вы можете изменять межстрочный интервал, поля страницы, переносы, тип и положение статусной строки.
Вы можете выбрать несколько шрифтов для каждой книги, и переключаться между ними в телефоне.
Для каждого шрифта вы можете выбрать его имя (тип), размер, цвет, жирный наклонный стиль (для всего текста, не для отдельных кусков) и направление. Чтобы читать, повернув телефон, надо создать один или несколько повёрнутых шрифтов! Поворот задаётся зелёной иконкой с телефоном на панели свойств шрифта.
Шрифт можно повернуть влево и вправо. Переключение на повёрнутый шрифт в телефоне отобразит текст снизу вверх или сверху вниз, что лучше выглядит на экранах, вытянутых сверху вниз. Так же на некоторых телефонах кнопки при этом удобнее лежат под пальцами.
Для каждого шрифта задаётся межстрочное интервал, что позволяет уместить на экран больше текста (при отрицательных значениях).
BookReader поддерживает 2 типа шрифтов – шрифты, встроенные в телефон и шрифты Windows.
1) Шрифты Windows установлены у вас на компьютере. Конда вы выбираете шрифт Windows, его копия помещёется во все созданные Javaкниги, занимая место как 5-20 килобайт текста в каждой, или даже больше в зависимости от размера символа.
Преимущество шрифтов Windows
На WinXP, если в них включено «сглаживание экранных шрифтов» шрифты Windowsвыглядят «гладкими» (технология MS ClearType) что гораздо лучше смотрится на экранах телефонов.
Также, поворачивать можно только шрифты Windows.
2) Эти шрифты встроены в каждый телефон. Они не занимают много места в JAR файле, оставляя больше места под книгу. Также, книги в формате Unicode (на китайском, японском и других азиатских языках, или с их фрагментами) могут отображаться только шрифтами телефона.
Шрифты телефона бывают трёх размеров – малый, обычный и большой. Их реальный размер в пикселах и присутствие в телефоне зависят от конкретной модели. Например, на некоторых аппаратах все 3 шрифта – одного размера и вида.
Размеры в шелле даны только для примера.
Шелл BookReader не может знать размер шрифта в пикселях для каждого конкретного телефона. Но вы можете узнать это сами, и выставить в BookReader шелл правильные значения.
Шрифты телефона не могут быть гладкими и повёрнутыми.
В любой момент вы можете сохранить настройки шелла в файл (при выходе они сохраняются автоматически). Шелл сохраняет настройки в BKS файлах (Book Set); сохраняются опции, шрифты и книги, включая разбивку на главы.
Затем вы можете восстановить сохранённое состояние, открыв BKSфайл (как книгу) или перетащив его из папки с файлами в окно BookReader шелл.
Если вы читаете книги на нескольких телефонах, или книги в разном формате (например, научные, художественные, шпоры), вы можете создать несколько BKS файлов без книг с настройками для каждого случая, и загружать их перед созданием книг.
Обратите внимание, текст самих книг в BKS файлы не входит (только пути к файлам и разбивка на главы). Если файл книги был удалён или переименован, в следующий раз книга не загрузится. Если файл остался, но был изменён, он будет заново переразбит на главы.
plugins\*.pd
. PD означает Plugin Description - Описание Плагина.
Так же можно сконфигурить постпроцессоры - обработчики простого текста с помощью внешних программ. Пример такого обработчика - recode.pd, описывающий вызов программы - распознавателя кодировок recode.exe.