Опубликовано 12 мая 2006, 00:33

Телефонная библиотека: книги для мобильника своими руками

Вы скачали полное собрание сочинений Льва Толстого и горите желанием прямо сейчас записать его в ваш мобильник? Дело за малым: найти и освоить программу-конвертер, которая превратит это текстовое безобразие в аккуратные мидлеты. Обзор самых популярных утилит для преобразования текстовых документов в Java-книги и практикум по превращению телефона в мобильную библиотеку – в этом материале.

Скука – смертный враг жителей большого города. Как тут не завыть волком, когда несколько часов в день тратишь на поездки в общественном транспорте. Борются эти самые жители со своим извечным недругом постоянно и всё более и более изобретательно. Кто уши плеером заткнёт, кто SMS-ками перебрасывается, кто достанет КПК да станет раскладывать никогда не надоедающие пасьянсы. Сейчас вот видео смотреть даже начали: благо, девайсов для этих целей в продаже пруд пруди, и доступны они нынче очень и очень многим. Однако традиционными и самыми верными лекарствами от скуки со времён запуска первой очереди московского метрополитена, без сомнений, являются книга и пресса. И, как ни крути, а газеты и журналы всё-таки уступают в популярности повестям и романам. Сегодняшний номер может быть скучным, неинтересным, да и занимает он ненадолго. Другое дело – книга. Сел в вагон метро или в автобус, да и нырнул в хитросплетения сюжета. К тому же для общего образования куда полезней – тут уж не поспоришь. Неудобно, конечно, и не совсем практично: книжку в «настоящем» переплёте в карман не сунешь (да и жалко с собой таскать, если и в самом деле хорошая книга), а «покетбуки» растрёпываются моментально и на тетрадки тут же разваливаются. И места занимают изрядно. А ещё и весят немало. В конце концов, не в наш же век высоких технологий терпеть такие неудобства! Сегодня вся Ленинская библиотека запросто поместится у вас на ладони. Как, вам кажется, что покупка PDA исключительно ради мобильного чтения – поступок неоправданный? Никто и не неволит: зачем же вам «наладонник», если замечательное устройство для чтения давно уже лежит у вас в кармане, и вы с ним не расстаётесь ни днём, ни ночью? Да-да, я говорю именно о вашем мобильном телефоне. Вам не кажется, что пора бы ему уже полностью отработать ту сумму, которую вы на него потратили? Замечательно: тогда мы сейчас и, буквально, не сходя с этого места, превратим его в полноценную мобильную библиотеку.

Теория

Вам не понадобится ни глубокого знания «начинки» телефона, ни каких-либо специальных приспособлений. А понадобится всего лишь мобильный телефон, ПК, средство локальной передачи данных по вкусу и немного терпения – исключительно для того, чтобы дочитать этот материал до конца. Оговорюсь: ваш мобильник должен поддерживать Java (желательно MIDP 2.0); впрочем, сегодня это уже скорее правило, чем исключение. Что такое Java (в данном случае J2ME), с чем её едят и для чего ещё она может пригодиться, вы сможете узнать в нашем материале «JAVA: скрытые таланты вашего телефона». Также опустим вопросы поиска нужной вам книги в электронном варианте: здесь проблем ровным счётом никаких нет, при должном навыке поиска в Сети можно найти всё что угодно – от «Декамерона» до последнего романа господина Лукьяненко. Нас же интересуют исключительно способы, которыми можно «научить» вам мобильный телефон отображать эту книгу на своём экране. Забудем о частных случаях: да, телефоны Nokia, начиная со второй редакции платформы Series 40, прекрасно распознают небольшие файлы формата .txt; да, с некоторых пор аппараты LG обрели способность работать с тем же файловым форматом; в конце концов, существуют многочисленные трубки Samsung с замечательным приложением Picsel Viewer, которое запросто «переваривает» даже .doc и .pdf. Реализованы эти функции, прямо скажем, слабенько и мобильному читателю помогут мало. По-настоящему комфортное чтение с мобильного телефона (оставим в стороне счастливых владельцев смартфонов и коммуникаторов) можно обеспечить лишь средствами J2ME. Премудрость здесь небольшая: берётся самый обычный текстовый документ, определённым образом преобразуется в J2ME-мидлет (то есть приложение для телефона), который затем устанавливается в память вашего аппарата как самая обыкновенная Java-игрушка. Места он при этом занимает совсем немного: средняя книга редко превышает размером 300-400 кбайт (в jar-файлах используется «упаковка», аналогичная ZIP). После установки Java-приложения вы находите его в меню телефона и запускаете: вуаля, перед вами искомый текст, который вы сможете замечательным образом читать как в вагоне метро, так и дома – лёжа на любимом диване. Дел здесь, как видите, на пять минут, причём добрые две трети этого времени займёт поиск нужной вам книги в Сети. Чаще всего книги-мидлеты обладают дополнительной функциональностью, как то: возможностью автопрокрутки, регуляции размера экранного шрифта, поиска нужного вам участка текста.

Мобильные «книги-приложения» на J2ME условно можно разделить на две группы: с возможностью подгрузки дополнительных текстов и без неё. В первом случае вы сможете открыть не только книгу, которая записана в мидлет, но и любой другой текстовый файл, который находится в памяти вашего телефона. Увы, работает эта замечательная функция далеко не на всех аппаратах: каким бы «умным» ни было мобильное приложение, прошивка мобильника может просто не «пустить» его в свою память.

Итак, предположим, вы уже скачали полное собрание сочинений Льва Толстого и горите желанием сразу же записать его в ваш мобильник. Дело за малым: найти и освоить программу-конвертер, которая превратит это txt-безобразие в аккуратные мидлеты. Предлагаю вашему вниманию две самых популярных утилиты для преобразования текста в понятный телефону формат. Обратите внимание: софтинки распространяются совершенно бесплатно, так что выбирайте любую – какая придётся по душе.

TequilaCat BookReader 2.2.8

Автор: Tequilacat.
URL: http://tequilacat.nm.ru/dev/.
Размер: 2 Мбайт.

Этот проект был создан довольно давно, и на протяжении всего времени своего существования он остаётся бесплатным. Приятно, что автор приложения TequilaCat BookReader (между прочим, русский программист) постоянно поддерживает его, выкладывая новые версии с всё новыми и новыми возможностями. И если первые версии «читалки» были не очень «умелыми», то на сегодняшний день (актуальная версия за номером 2.2.8) программа обладает нешуточной функциональностью. Автопрокрутка, «подгрузка» файлов формата .txt из памяти телефона, поддержка Unicode и шрифтов MS ClearType и многое другое. Утилита состоит из двух частей: конвертера (shell) и, непосредственно, мидлета (jar-файла).

01

01

Конвертер позволяет сконфигурировать Java-книжку конкретно для вашего телефона: выставить нужный шрифт, ограничить размер jar-файла, отрегулировать режим автопрокрутки, определить поля. Кроме того, автор приложения внедрил в него оригинальный алгоритм разбивки текста по главам и частям – для более «цивилизованного» чтения. Поддерживается форматирование (в том числе и перенос), а с помощью дополнительных плагинов можно «обучить» конвертер напрямую «вытаскивать» текст из архивов, pdf-документов и «пальмовых» файлов pdb/prc.

Если вы забыли выставить какую-нибудь важную настройку – не беда. В меню самого мидлета (кстати, на русском языке) можно найти огромное количество самых разнообразных опций: тут вам и размер экранного шрифта, и способ прокрутки (построчно либо постранично), и регуляция подсветки. Одним словом – раздолье.

Возможности TequilaCat BookReader 2.2.8:
Выбор шрифтов: поддерживаются все Windows-шрифты фиксированной ширины.
Поддержка MS ClearTyp шрифтов, специально оптимизированных для ЖК-экранов. Под Windows XP все выбранные шрифты создаются сглаженными и лучше выглядят на экранах телефонов.
Настраиваемая автопрокрутка текста (построчно или постранично).
Постоянная прокрутка при нажатой клавише направления.
Переход по тексту (на позицию в % от длины текста).
Закладки по тексту.
Поиск (в том числе на русском).
Форматирование текста.
Удобная разбивка по главам - просмотр, переименование и объединение глав.
Отображение текста слева направо или сверху вниз, в зависимости от размеров экрана.
Поддержка Unicode.
Ограниченная поддержка средневосточных языков .
Часы: если у вас нет часов, то не надо выходить из книги, чтобы узнать время.
Поддержка телефонов с touchscreen.
Включение-выключение подсветки для некоторых моделей телефонов.
Поддержка «проектов» – индивидуальных настроек для разных типов документов.
Чтение txt-файлов из памяти телефона (необходима поддержка MIDP 2.0 c JSR 75).

ReadManiac 2.5.2

Автор: Roman Lut.
URL: http://www.readmaniac.com/.
Размер: 4 Мбайт.

Очень серьёзный программный продукт – просто-напросто шедевр среди freeware-утилит. Редко встретишь среди бесплатного софта настолько серьёзную разработку. Проект существует с 2003 года – уже без малого три года он самым аккуратным образом поддерживается авторами. Существует как англоязычный, так и русскоязычный вариант утилиты.

03

03

Для того чтобы воспользоваться софтинкой ReadManiac, необходимо скачать дистрибутив, который занимает ровно 4 Мбайт. После стандартной процедуры установки приложения запустится «Мастер» создания мидлетов. И здесь начинается самое интересное – пользователю доступны три варианта J2ME-приложения: ReadManiac FULL, LITE и TINY. Первый вариант представляет собой «пустой» мидлет, то есть без заранее записанного в него текста. Он единожды устанавливается в память телефона; с его помощью можно загружать и читать файлы формата .txt – причём не только с локальных дисковых ресурсов вашего аппарата, но также из крупнейших библиотек Сети (для этого в него встроен специальный программный движок) по WAP.

Если ваш телефон не «пускает» Java-приложения в свою память, то к вашим услугам LITE- и TINY-модификации мидлета. Они, как вы уже догадались, не имеют возможности «подгрузки» информации из внешних источников – в них изначально записана та или иная книга. Версии LITE и TINY отличаются функциональностью (закладки, поиск текста etc.), а, следовательно, и размерами – если для вашего телефона критичен этот параметр (всем известно, что старые аппараты Nokia первой Series 40 с цветным дисплеем давали добро на установку приложений, не превышающих 64 кбайт).

Возможности ReadManiac 2.5.2:
Возможность отображения на дисплее телефона от 4 до 13 и более строк текста (в зависимости от размера дисплея).
Перенос слов, пропуск пустых строк, выравнивание текста, изменение между строчного расстояния и другие функции форматирования.
Поддержка кодировок: Кириллица, Windows, Кириллица DOS, Europe Windows.
Система закладок.
Поиск по тексту и переход к указанной странице.
Загрузка txt- и html- (преобразовывает в текст) файлов из Интернета по протоколу http.
Поиск книг по сайту lib.ru и загрузка книг с этого сайта.
Размер txt-файлов ограничен только размером доступной памяти.
Поддержка txt–файлов, сжатых в форматы ZIP, PDB и TCR.
Настраиваемая автопрокрутка.
Создание новых шрифтов для программы (с помощью прилагающейся утилиты) из шрифтов для Windows.
Поворота экрана на 90°.
Возможность выбора цвета шрифта и фона.
Возможность использования Lite версии – книга находится внутри мидлета.

Практика

А теперь давайте попробуем создать собственную Java-книгу самостоятельно – на примере TequilaCat BookReader 2.2.8. Для этого скачаем эту утилиту с сайта разработчика, разархивируем её и запустим программу-shell.

St01

St01

Её интерфейс достаточно прост, разобраться в нём не составит труда. Все настройки изначально выставлены таким образом, чтобы мидлет подошёл практически всем телефонам с поддержкой J2ME MIDP 2.0. Тем не менее, как показала практика, далеко не каждый аппарат соблаговолит открыть такое «усреднённое» приложение. Поэтому оптимизируем его, например, для Nokia 6230i.

St02

St02

Из выпадающего списка в левом углу окна выберем нужную модель телефона. Справа укажем кодировку по умолчанию (нас интересует кириллица). Укажем имя jar-файла и название книги, которое отобразится в меню телефона.

St03

St03

Теперь добавим текст – для этого достаточно кликнуть мышкой в правой части окна. Информацию можно «извлечь» из архива, из pdf-документа – быстро и без малейшего вмешательства пользователя в этот процесс. В качестве «опытного образца» используем книгу замечательного польского писателя Анджея Сапковского «Последнее желание». Как видите, текстовый массив можно разбивать по главам автоматически – для этого предусмотрен достаточно гибкий алгоритм. Доступна также «ручная» разбивка. Нужна ли она вообще? Опыт показывает: безусловно, нужна. При выходе из приложения в телефоне мидлет запоминает вашу последнюю позицию. Тем не менее, если вдруг произошла непредвиденная ситуация (телефон «завис» или, скажем, вы резко достали из него батарею), то «автозакладка» будет потеряна, и вам придётся «пролистывать» до того места, на котором вы остановились. Внутри небольшой главы вы найдёте его быстро, а вот «в теле» длиннющего текста – вряд ли.

St04

St04

Теперь можно немножко покопаться в настройках. Начинающим пользователям экспериментировать со шрифтами Windows без нужды я бы советовать не стал – это опция для людей знающих. Чаще всего достаточно шрифтов телефона. А вот установить форматирование можно: текст с переносами читать куда удобней. Также можно изменить размер полей страницы.

St05

St05

Кликнув на строку «Настройки», мы попадаем к важным и полезным опциям создания мобильной книги. В этом окошке ваш мидлет можно защитить паролем, а также «попросить» программу создавать jad-файлы (если мы собираемся устанавливать приложение «руками», то нам он совсем ни к чему). Ну вот, книга вполне готова к конвертированию. Другие опции можно оставить «как есть» – для нас они сейчас не важны. Нажимаем на кнопочку «Build» в левом верхнем углу экрана, ищем готовый мидлет и устанавливаем его в телефон с помощью пакета Nokia PC Suite. Одновременно с этим «закидываем» в память аппарата файл формата .txt.

Наша книга расположена в меню «Приложения», папка «Collection». Откроем его.

St06

St06

Мидлет предложит выбрать ресурс: «внешний» текстовый файл либо та книга, которую мы паковали при помощи утилиты-shell’а. В любом случае мы увидим на экране текст. Осталось отрегулировать размер шрифта (кнопка «#»), выбрать режим подсветки (клавиша «*»: «включена постоянно», «включена на время», а также «выключена») и наслаждаться чтением любимой книги. Из «Меню», которое вызывается нажатием центральной кнопки, можно открыть текстовый файл, поставить закладку, запустить текстовый поиск, а также быстро «перепрыгнуть» к указанному (в процентах) участку документа. Покопавшись в настройках, можно изменить размер шрифта, инвертировать цвета дисплея, установить интервал автопрокрутки. Всё, как видите, продумано просто замечательно.

Телефоны

Естественно, не все модели мобильных телефонов хорошо подходят для мобильного чтения. Существуют как минимум два фактора, которые могут испортить жизнь «телефонному читателю». С точки зрения общего комфорта немаловажен качественный большой дисплей с высоким разрешением (как владелец Nokia 6230i, скажу вам по секрету: читать с маленького квадратного экранчика – развлечение весьма сомнительное). Во-вторых, многое зависит от политики производителя по отношению к Java. Всем известно, что многие мобильники лишены возможности установки мидлетов «вручную», а ориентированы исключительно на WAP-сервисы (кстати, многие торговцы контентом с недавних пор запустили новую услугу: загрузка Java-книг по SMS-запросам). Если вы – счастливый обладатель такого аппарата, то вам придётся или отказаться от чтения с экрана вашего мобильного друга, или запустить собственный WAP-сайт, на который вы и будете выкладывать сконвертированные мидлеты. Можно, конечно же, воспользоваться услугами конент-провайдера: платить вам в этом случае, правда, придётся фактически «за воздух».

Ну а если платить совсем не хочется, то добро пожаловать по одной из этих ссылок – вашему вниманию несколько бесплатных ресурсов с Java-книгами:
http://www.javabook.ucoz.ru/;http://mobook.by.ru/;http://super3gp.narod.ru/books.html;http://www.fjava.com.ru/books_p1.php.

Кстати, далеко не каждый телефон позволит мидлету обратиться к его памяти за txt-файлом. Наибольшую «вольницу» в этом отношении предоставляла в своё время компания Siemens. Впрочем, на большинстве моделей Nokia подобных проблем также не возникает – тут главное не забыть разблокировать Java-приложению доступ к ресурсам телефона.

Вердикт Ferra.ru

А теперь попытаемся ответить на один важный и достаточно сложный вопрос. А стоит ли игра свеч? Если уж так хочется приобщиться к «мобильным читателем», то почему бы, в конце концов, не купить КПК? Простенький, самый разбюджетный, можно даже б/у? Ведь читать с большого экрана «наладонника» гораздо удобнее. С другой стороны, PDA – это лишнее устройство в кармане, и пренебрегать этим не стоит; тем более J2ME-средства позволяют обеспечить пусть и не оптимальный, однако вполне достаточный комфорт просмотра текстовой информации на экране. Получается, что покупка КПК исключительно как «читалки» при наличии телефона с толковой организацией Java – однозначно нерациональная трата средств, здесь требуется дополнительная мотивация. На этом, пожалуй, мы PDA оставим в покое. Самое время скачать побольше хороших книг и «залить» их в мобильник. Лекарство от скуки готово.