Pocket-Viewer.ru for users and developers
Google
 
Web pocket-viewer.ru
Главная · Программы · Пользователям · Разработчикам · Форум   
  Пользователям
Куплю
Продам
Где отремонтировать
П-Документация
Характеристики
П-БРАВО
ЧАВО (FAQ)
Публикации
Рисунки
PV-шники



заправка картриджей в Москве

Читалка текстов TextViewer и книги для него.

   Одна из самых популярных на сегодняшний день программ для чтения
   текстов на КПК Casio PocketViewer - это TextViewer от немецкого
   программиста Йоханеса Стейнграбера (Johannes Steingraber, ).
   Чтобы не обидеть поклонников программы MiniBook от Fabio Fumi, могу лишь
   ответить, что сам я MiniBook не пользуюсь, поэтому ничего, в том числе -
   плохого, сказать об этой программе не могу.
   
   Но здесь я напишу только о программе TextViewer (на сленге пользователей
   PocketViewer.ru - сам КПК называется PV, а программа - TV).
   
   1. TextViewer - для чего, с чем и сколько.
   
   Программа TV появилась достаточно давно - ранние версии мне неизвестны, но
   никак не менее 2000 года. Успешно работает на машинках моделей PV-450X/250X,
   PV-S450/S250, PV-S660/S460, PV-S400/S600, совместима со всеми современными
   версиями PVOS. Главное - чтобы Каська позволяла устанавливать саму программу
   и пользовательские файлы данных.
   Появилась версия для модели PV-S1600, но за отсутствием таковых машинок
   о ней известно слишком мало. Надо полагать - работает не хуже, чем остальные.
   
   Для наших русских ребят первый вопрос о TV обычно касается понимания кириллицы.
   В этом плане программа полностью совместима с кириллицей (и вообще любыми
   национальными языками), требуется лишь подобрать и установить набор шрифтов.
   Программа понимает шрифты от платформы PALM форматов *.PDB и *.PFT.
   Достаточно много шрифтов для кодировки CP-1251 пользователями форума PocketViewer.ru
   уже были найдены, проверены и описаны. На различных сайтах лежат подборки шрифтов,
   даже с описанием и скриншотами.
   
   Исходя из того, что шрифты, как упоминалось, существуют в формате CP-1251,
   следует, что и тексты для TV должны быть в кодировке Win-1251.
   На самом деле - это не совсем так. Известен по крайней мере один шрифт PDB
   специально для кодировки CP-866. Так что, если очень нужно - можно читать и тексты,
   подготовленные на DOS-платформе (например - в любимом для некоторых старом
   добром редакторе Lexicon). Но это уже - скорее, к разряду исключений.
   
   О подготовке текстов для TV будет сказано отдельно. Здесь лишь вкратце скажу,
   что программа использует вариант хранения нескольких (никто не мешает взять один)
   файлов с текстами в LZH-архиве, поэтому тексты в памяти PV хранятся достаточно
   экономно.
   
   Опытным путем в форуме было подсчитано (не мной), что Каська позволяет хранить
   в себе 2 экземпляра полного издания "Воины и мира" Л.Н. Толстого.
   
   2. Версии и варианты TextViewer, патчи "от_Костика".
   
   Отдельно остановимся на версиях программы.
   
   Дело в том, что многие начинающие ПиВи-шники несколько некорректно называют версии.
   Соответственно, "адванчед-юзеры" не всегда могут понять, о чем толком идет речь.
   Такое положение дел пошло из-за того, что гениальный программист Константин Рассказов
   начал адаптировать программу TV, добавляя в неё новые функции. И свои версии
   называл последовательно, но не всегда согласованно с оригинальной.
   Версии TV с патчами "от Костика" полюбились многим, и практически никто не пользуется
   оригинальной немецкой версией программы.
   
   Оригинальные версии TV нумеруются в виде "1.17", "1.20", "1.34", причем нигде
   в патчах номер оригинальной версии не меняется. Промежуточных версий (например 1.30)
   не существует, по крайней мере - Стейнграбер их никому не предоставлял.
   
   Версии патчей Костика нумеруются двумя цифрами, которые обычно дописываются к имени
   программы. Когда ещё не был отработан корректный способ переименования программ,
   Константин заменял номером патча 2 последних символа, так что после загрузки в Каську
   оригинальный TV имел подпись под иконкой "TextViewer", а версия с патчем -
   например "TextView06".
   
   Поскольку не существует одной и той же версии патча для разных версий основной
   программы, то её можно однозначно определить по версии патча.
   Например, для указанного "TextView06" полное корректное название версии будет
   выглядеть как "TextViewer - v1.17 - p06".
   
   Ниже описаны известные мне версии с датами выхода и краткими пояснениями.
   Названия патчей даются в сокращенном виде "TVxx".
   
   TextViewer - 1.15 - 2001 год.
   Патчи от Костика для данной версии мне неизвестны.
   
   TextViewer - 1.17 - 12.12.2001.
   Версия, принесшая славу и популярность TV.
   TV03 - патч для выравнивания по ширине символом 0x01(c), версия от 05.01.2002 г;
   TV06 - патч с автоматическим скроллированием, версия от 17.01.2002 г;
   TV07 - патч с автоматическим скроллированием, версия от 23.01.2002 г;
   TV08 - патч с автоскроллированием и индикацией времени, версия от 10.02.2002 г;
   
   TextViewer - 1.20 - 20.02.2002.
   Новый дизайн, закладки, встроенные часы, индикатор позиции в тексте,
   возможность замены встроенных шрифтов.
   TV09 - патч для выравнивания по ширине символом 0x01(c), версия от 01.03.2002 г;
   TV12-14 - версии патчей автоформатирования (p14 - от 26.03.2002).
   
   TextViewer - 1.34 - 07.2002.
   патчей от Костика не появилось.
   
   TextViewer - 1.35 - 08.2002.
   TV15 - патч автоформатирования для TV-1.35, версия от 06.08.2002 г.
   
   TextViewer - 1.36 - 29.08.2002.
   TV16 - патч автоформатирования для TV-1.36, версия от 03.09.2002 г.
   
   До появления версии TV-1.34 в мае-июне 2002 года появилось несколько версий TV,
   названных TV-beta13, TV-beta15. На самом деле, это - версии программы TV-1.20
   с различными вариантами предустановленных шрифтов, не имеющие к нумерации патчей
   Константина Рассказова никакого отношения.
   
   3. Шрифты для TextViewer-а, встроенные и внешние.
   
   Теперь поговорим о шрифтах.
   
   Изначально (в версии 1.17) шрифты были встроенные и незаменяемые (в смысле -
   способ их замены не был известен). Встроенный в программу набор содержал
   несколько англоязычных шрифтов и пару иероглифических. Понятно, что нашим
   пользователям такая ситуация была не особенно удобна - не читать же только
   английские тексты.
   
   Для неанглоязычных текстов TV поддерживает так называемые внешние шрифты.
   Шрифты требуется достать в виде файлов *.PDB или *.PFT - это формат для
   платформы PALM. О кодировке говорилось ранее, но всё же, как стандарт
   принято пользоваться CP-1251 (Win-Cyrilic).
   
   Несколько файлов со шрифтами собирают вместе, а затем из них делается
   один файл ADT для закачки в Каську (о подготовке файлов для TV будет сказано
   позднее). Обычно файл имеет имя FONTS.ADT, RFONTS.ADT или что-то подобное.
   Очень часто такой файл с некоторым "обычным" набором (6-8 шрифтов) идёт
   в комплекте с программой TV. Если вам встретится файл с подобным именем -
   знайте, это набор шрифтов для TV.
   
   Ничто не мешает иметь в машинке несколько подобных файлов (естественно,
   с отличающимися именами), и программу можно будет настроить на вывод текста
   любым из имеющихся в них шрифтов. Минус у этого варианта тот, что не очень-то
   хочется отдавать лишний слот из области файлов данных (а их всего 15)
   под какой-то дополнительный файл размером 10-20Kb. Поэтому обычно после
   выбора "личного" состава шрифтов именно их комплектуют в файл FONTS.ADT,
   а остальные наборы удаляют.
   
   Начиная с версии TV-1.20 встроенный в программу (предустановленный) набор
   шрифтов можно изменять самому.
   Плюсы данного подхода:
   - не требуется установка никаких других модулей кроме BIN-файла,
   - экономится слот в области пользовательских файлов.
   Минусы:
   - не все могут выполнить "предустановку" шрифтов в файл программы,
   - предустановленный набор ограничен по объему (помещается 5-7 шрифтов).
   
   Наиболее простая из программ для замены встроенных в TV шрифтов -
   InsFonts от Алексея Махмутова, aka Lerm. Но она требует "ручной" работы
   через командную строку. Существуют программы (например, TV_Fonts от Василя
   Матвеева) с более дружественным интерфейсом, которые позволяют просмотреть
   даже внешний вид текста для выбранных шрифтов.
   
   Основная проблема, с которой можно столкнуться при замене предустановленных
   в TV шрифтов - это превышение размера. При некорректной установке (когда размер
   выбранного набора больше, чем допустимо) никаких сообщений об ошибках
   не появляется, но программа может работать некорректно. Часто это проявляется
   не сразу, а по ходу чтения текстов. Особенно критичны к такому нарушению
   версии с патчами Костика - физически патчи располагаются в теле программы
   после блока шрифтов, и при превышении размера происходит затирание кода патча.
   
   К сожалению, точный максимальный размер блока шрифтов для разных версий TV заранее
   не известен. Размер встроенного блока LZH в оригинальных версиях TV-1.20
   и TV-1.36 одинаков (!) и составляет 11361 байт.
   Именно на это значение и следует ориентироваться при подготовке собственного
   файла FONTS.LZH перед установкой его в TV. Опытным путем это подтверждается.
   
   3. Патчи от Костика - автоскроллинг и "форматирование 0x01".
   
   Константин Рассказов при исследованиях программы TV сумел найти подход
   для добавления в неё новых функций. Одной из главных задач в 2001 году
   было решение проблемы форматированного вывода - с выравнивание по ширине.
   Но кроме этой, были и некоторые другие фишки, поэтому вначале вкратце упомянем
   о них.
   
   "Авто-скроллирование" (p06, p07, p08) - автоматическая прокрутка текста на экран
   или на страницу через заданные промежутки времени. Патч был реализован для версии
   TV-1.17, и в версии 1.20-1.34/36 не появился, поэтому пользователям современных
   версий он не известен. Но был достаточно удобный - можно было задать самому
   скорость пролистывания (в секундах) и остановить его в любой момент.
   Так что при чтении текста ни дергать колесико, ни нажимать на экран не было
   необходимости - текст сам пролистывался.
   
   "Индикация времени" (p08) - последний патч для версии TV-1.17. Эта функция была
   реализована в версии 1.20 и следующих как стандартная.
   
   "Форматирование по ширине символом 0x01(c)" (p03 - p09) - выравнивание текста
   по ширине экрана с помощью предварительной подготовки его внешней программой.
   
   Программа называлась TxtForm, и была предназначена для форматирования текстов
   перед закачкой их в программу MiniBook. Но в версии 1.20 в неё была добавлена
   возможность форматирования текстов и для TV, правда, при этом требовалось
   установить в Каську пропатченную версию.
   
   Выглядело это так. Сначала текстовый файл, который нужно было закачать в машинку,
   обрабатывался в программе с указанием имени шрифта, которым его собирались читать.
   После закачки и открытия текста в TV он выглядел выровненным по ширине экрана.
   
   Внутренне же происходило вот что. Исходя из ширины символов в указанном шрифте
   текст подсчитывалась ширина строки символов, и текст разрезался переводами строк
   на участки, меньшие ширины экрана. Затем между словами (по пробелам) вставлялся
   "символ" с кодом 01. При отображении в TV этот символ не читался из шрифта, а
   распознавался как "пробел" с шириной в одну точку. Соответственно, любую строку
   можно было растянуть с точностью до одной точки на ширину экрана.
   
   Минусы данного подхода были следующие:
   - размер текстового файла увеличивался из-за служебных символов примерно на 20-25%;
   - текст можно было читать (красиво) только тем шрифтом, который был указан
   при форматировании.
   Но и это радовало пользователей. Тем более, что для программы MiniBook пользователи
   уже были приучены к подобным ограничениям изначально.
   
   Поскольку работу по приведению текстовых файлов в отформатированный вариант
   (и оформление их сразу в файлы ADT) каждый делал сам для себя, стали появляться
   призывы делиться подготовленными отформатированными книгами - "чтобы зря
   не пропадало".
   
   Особенно сложно приходилось с текстами, которые в традициях DOS-оформления
   уже были отформатированы по ширине с помощью дополнительных пустых строк и пробелов
   (что говорить - иногда и в DOC файлах MS-Word лишних пробелов бывает предостаточно).
   Приходилось удалять из них пустые строки, а уж удалить лишние пробелы вручную
   никто и не пытался - для этого стали появляться программы пред-форматировщики.
   Выяснилось, что если оформить текст как "одна строка - один абзац", и оставить
   между словами не более одного пробела, то в TV текст выглядит достаточно хорошо.
   Рваный правый край раздражал не многих (меня, например, гораздо больше раздражают
   неодинаковые пробелы между словами), так что TV-читатели всё меньше и меньше
   стали использовать "Форматирование 0x01". Тогда появилось "Автоформатирование".
   
   4. Патч автоформатирования - встроенный TxtForm.
   
   Патч появился в условной версии TV-1.20 (p12). Тогда это называлось, как
   "TV-1.20 + TxtForm-2.0". Патч позволял выполнять все описанные выше действия прямо
   в процессе вывода текста на экран. Естественно, при этом корректно понимался любой
   выбранный в данный момент шрифт, а также не требовалось никакой предварительной
   обработки.
   
   Точнее, закачивать тексты можно (и нужно) было без предварительного форматирования
   по ширине. Но удаление пустых строк, лишних пробелов и всякой прочей лабуды, а также
   склеивание всего абзаца в одну строку вполне годилось.
   
   В заключение следует сказать, что в описанных версиях патчей Константин реализовывал
   только функцию вывода на экран (ну ещё и запуск пролистывания в патче автоскроллинга).
   К реализации функций распаковки текстов из архива (скорости распаковки, быстроты
   пролистывания вперед и назад по файлу, буферов текста и прочее), а также реализации
   закладок, сохранения позиции при выходе и подобных функций автор патчей никакого
   отношения не имеет, что он сам и подтверждает.
   
   5. Подготовка текстов, или "что такое *.LZH.ADT?".
   
   Вот наконец, мы и подошли к вопросу о подготовке данных для закачки в машинку.
   
   Сам процесс не особенно и трудный, и для этого уже создано несколько удобных
   программ. Основное в них - из одного или нескольких файлов TXT получить
   файл ADT, который и закачивается в Каську как обычный пользовательский файл.
   
   Например, есть программа Convert_to LZHADT от Василя Матвеева, которая добавляет
   в локальное меню Windows одноименную команду. После её установки достаточно
   отметить в Эксплорере или другом файловом менеджере Windows нужные текстовые файлы,
   нажать правую кнопку мышки и выбрать эту команду.
   Будет сформирован файл ADT, который можно сразу и закачивать в Каську.
   
   При подготовке текстов начинающие пользователи обычно упускают, что
   один файл ADT для TV может содержать несколько текстовых файлов. Поскольку
   файлы при этом упаковываются по стандартному алгоритму LZH, то архивы могут
   содержать не только несколько файлов, но и несколько подкаталогов.
   А текстовые файлы могут иметь длинные имена (правда, не совсем ясен вопрос
   с русскими названиями). Есть только ограничение на ширину экрана у Каськи,
   так что имена файлов более 20-25 символов делать не стоит.
   
   Вторым моментом является то, что чем больше размер текстового файла, тем
   дольше происходит распаковка архива в TV. По этому поводу можно написать довольно
   много пояснений, скажу лишь, что много мелких файлов в архиве гораздо приятнее
   для TV, чем один большой. Так что большие файлы нужно резать на куски.
   Например, книгу стоит порезать на главы, и обозвать их "KNIGA-01.TXT", "KNIGA-02.TXT"
   "KNIGA-...TXT", а уже потом упаковать. Это также облегчит навигацию по текстам -
   если файл один большой, найти в нем нужное место не так-то просто.
   
   Понятно, что многим копаться с текстами перед закачкой лень. Им подавай программу,
   чтобы по нажатию одной кнопки выполняла всю работу. Но мне, например, ради удобного
   чтения не лень посидеть некоторое время, отформатировать текст (на предмет
   удаления пробелов и склеивания абзацев), порезать его на куски, а уже затем
   формировать файл для TV.
   
   Полностью процесс (для ручного действия) в пошаговом режиме следующий:
   1) Подготовить текстовые файлы (по умолчанию расширение принято TXT, но это
   уже на усмотрение пользователя), проверить кодировку;
   2) Порезать их на части (необязательно), назвать нужными именами (в латинском регистре);
   3) Упаковать текстовые файлы в LZH архив - здесь годиться как старый архиватор
   LHA.EXE, так и новый PowerArhiver (в последнем следует установить метод
   сжатия LH-5, а не самый последний);
   4) Архив можно переименовать как угодно (в латинском регистре), но не более 15 символов
   (с учетом расширения остается всего 11, но сильно умные могут его обрезать - ничто
   не испортиться);
   5) Сформировать из файла архива файл ADT.
   
   Обычно при формировании архивов в файлы ADT они получают имена *.LZH.ADT, то есть
   расширение LZH остается "вторым" (с конца) - Windows это позволяет.
   Такой подход помогает с первого взгляда определить, что файл ADT содержит архив,
   и скорее всего - это тексты для программы TV. Но в принципе, ничто не мешает
   вырезать это "второе" расширение, и из файлов KNIGA*.TXT получить в конечном
   итоге файл KNIGA.ADT.
   
   6. Новые функции в версии 1.20 - "Закладки", "Регионы", "Промежуток".
   
   Опишу некоторые функции, появившиеся начиная с версии TV-1.20.
   
   "Закладки" - возможность запоминания текущей позиции и быстрого возврата на неё.
   Пункт меню "Bookmarks" - при его выборе Вы попадаете в "Эскизы" (QuickMemo),
   где на экране скриншот того места в тексте, которое было в TV. Нижняя часть
   картинки занята служебной полосой, на которой отображено имя файла,
   условная позиция в процент от его начала, и что-то типа полоски типа штрих-кода.
   На верхней части можно сделать любые изменения и свои пометки, хоть стереть весь
   текст и нарисовать свою рожицу. А нижнюю часть портить не стоит.
   
   Если сохранить картинку (со своими пометками или без оных) и вернуться в TV по
   ESC или крестику в правом верхнем углу - ничего не измениться. Картинку в будущем
   можно посмотреть в самой программе "Эскизы", и даже почитать на ей текст.
   Таким образом, закладка была создана.
   
   Чтобы вернуться на запомненной место по закладке, выбираете в меню тот же пункт
   "Bookmarks", но не сохраняете закладку (при этом без разницы, какой файл и на какой
   позиции был открыт в TV), а вываливаетесь в оглавление Эскизов, выбираете
   нужную вам закладку, открываете её на весь экран, а затем возвращаетесь в TV.
   И программа загрузит указанный в закладке файл, причем на том самом месте.
   
   "Регионы" - пункт меню "Configure Regions". При его выборе экран делится
   на 5 частей горизонтальными линиями, которые можно передвигать стилусом.
   При нажатии мимо линий режим закрывается.
   Назначение областей экрана сверху в них:
   1 - область, нажатие по которой вызывает пролистывание на один экран назад,
   2 - область, -//- на одну строку назад (текст сдвигается на строку вниз),
   3 - центр экрана, на касания не реагирует,
   4 - область, -//- на одну строку вперед (сдвиг на строку вверх),
   5 - область, -//- на один экран вперед.
   
   "Промежуток" - пункт меню "Line spacing". Позволяет указать дополнительный
   промежуток между строками текста относительно высоты шрифта в точках.
   При уменьшении - умещается больше строк, при увеличении - лучше видно текст.
   
   С уважением Рямов Сергей / RSS, г. Хабаровск.
Все права связанные с торговыми марками, упоминаемыми на страницах этого ресурса, принадлежат их владельцам.
Полное или частичное воспроизведение любых материалов, содержащихся на этом сайте, допускается только с условием размещения ссылки на этот сайт.
Пишите нам: [email protected] © Алексей Ананьев-Миляр, 2001
www.melar.ru
Hosted by valueHOST: Лидер Вэб-Хостинга



Rambler's Top100 Rambler's Top100 Информационная Деловая Сеть