Kleptomania

Автор: J-34
Дата: 14.02.2002
Все фото статьи

Введение


Речь пойдёт о приложении Kleptomania 2.3. Kleptomania - уникальная в своем роде программа, она позволяет копировать текст с любого места экрана Windows, из любого приложения, даже не поддерживающего копирование. Программу можно применять для копирования текста дерева каталогов, списка файлов, отчетов баз данных, текста сообщений или диалогов, текста меню, текста строки состояния и т.д.
Принцип работы программы довольно простой. Здесь, как и при сканировании и распознавании печатного текста на сканере, используется принцип оптического распознавания текста с выделенной области экрана, однако с некоторыми особенностями. Т.к. текст в любой программе может отображаться только шрифтами, установленными в Windows (если только он отображается именно как текст, а не как графика), то существует ограниченное конечное возможное количество написания текста всеми установленными в системе шрифтами с различными комбинациями их свойств, такими, как наклонный или жирный шрифт. Это упрощает дело. Поэтому для безошибочного распознавания текста программа вначале сканирует все установленные в системе шрифты.

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

Можно выбрать одну из трех комбинаций: Shift-Ctrl, Ctrl-Alt, Shift-Alt или не выбирать ничего. В программе написано, что работать будет выбранная комбинация левых клавиш, однако у меня одинаково работают как левые, так и правые клавиши. При установке флажка Auto startup ("Автоматический запуск") программа прописывает себя в реестр по адресу HKEY_CURRENT_USER \ Software \ Microsoft \ Windows \ CurrentVersion \ Run \ для автоматического запуска при старте Windows.

В запущенном состоянии иконка программы располагается в трее.

По нажатию правой кнопки мыши доступно меню программы.

Режимы работы


Вы можете выбрать один из следующих режимов работы программы:

Native Text Select (Выделение текста). В данном режиме курсор принимает форму , выделение текста в программе работает как в обычном текстовом редакторе.

Select Text / Graphics Rectangle (Выделение текста в прямоугольной области). В данном режиме курсор принимает форму и из заданной прямоугольной области экрана выделяется текст.

Select Text / Graphics of Window (Выделение текста в заданном окне Windows). В данном режиме курсор принимает форму , при этом программа сама определяет прямоугольную область и выделяется весь текст в заданном окне Windows.


Select Graphics Rectangle (Выбор графического прямоугольника). В данном режиме курсор принимает форму , выделяется прямоугольный кусок экрана, но в отличие от выделения текста в прямоугольной области текст не выделяется и выбранный фрагмент экрана доступен для копирования.

Smart Text / Graphics Select (Продвинутый режим). Данный режим предназначен для опытных пользователей. Курсор принимает форму , не перепутайте этот режим с режимом выделения текста (), курсоры у них очень похожи. В продвинутом режиме вы можете выбирать, какой из режимов использовать. Если вы вызываете использование этого режима и курсор стоит над текстом, то вызывается режим выделения текста, иначе вызывается режим выделение текста в прямоугольной области. При двойном щелчке левой кнопки мыши вызывается режим выделение текста в заданном окне Windows. Курсор автоматически принимает форму выбранного режима.

Работа


После выбора заданного режима и выделения нужной области Kleptomania захватывает текст и/или графику из этой области и выдает всплывающее меню, где пользователю доступны следующие действия (меню контекстнозависимое, поэтому в зависимости от содержания буфера обмена те или иные пункты могут быть недоступны):

Копирование:

Copy Default (All Formats) - Копирование во всех форматах. Установка по умолчанию. Выбранный кусок экрана копируется одновременно в текстовом, как текст в формате RTF и в графическом виде и вставляется в зависимости от выбранного для вставки приложения как текст, текст RTF или как графика.

Copy Plain Text - Копировать только текст. Копируется только текст без форматирования.

Copy RTF - Копировать в формате RTF. Копируется текст в формате RTF, т.е. сохраняются имена и размер шрифта и форматирование.

Copy Graphics - Копирование графики. Выделенная область копируется как графика в формате BMP.

Copy Append Default - Добавить к скопированному. При выборе данного пункта выделенный текст добавляется в буфер обмена, причем добавляется как текст без форматирования, так и текст в формате RTF. Это удобно при копирования нужного куска текста по частям.

Copy Plain Text Append - Добавить к скопированному только текст. В отличие от предыдущего пункта к содержимому буфера обмена добавляется только текст, без форматирования.

Copy RTF Append - Добавить к скопированному текст в формате RTF. Аналогично, в буфер обмена добавляется текст в формате RTF.

Примечание: при выборе любого добавления графика в буфер обмена не добавляется.

Пункты меню:

Font <used font and size> - Используемый шрифт. Данный пункт меню информирует о шрифте выделенного текста, его стиле и размере.

При выборе данного пункта меню информация об используемом шрифте копируется в буфер обмена ("Fixedsys 10"), стирая его содержимое. Будьте осторожны с его использованием.

Search - Поиск. Данный пункт меню вызывает поиск в одной из четырех поисковых системы: AltaVista, Excite, Yahoo или Deja.

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

Browse <http://www.domain.org> - Просмотреть в броузере. Данный пункт запускает интернет броузер, установленный по умолчанию, и загружает в нем выделенный интернет-адрес. Адрес должен начинаться с указания протокола "http://" или с "www".

E-mail to <name@domain.org> - Послать электронную почту по адресу name@domain.org. Запускает установленный по умолчанию клиент электронной почты и создает новое письмо с указанным адресом электронной почты.

Статистика - Kleptomania показывает количество линий (lines), слов (words) и символов (chars) выбранного текста. В данном примере 1 линия, 1 слово и 15 символов.

При выборе данного пункта меню информация о статистике копируется в буфер обмена ("1 lines, 1 words, 15 chars"), стирая его содержимое. Будьте осторожны с его использованием.

Sum of x nums - Сумма цифр. Kleptomania показывает количество встретившихся в выбранном тексте чисел и их сумму. Не цифровые символы при этом этом игнорируются и выступают как разделители.

При выборе данного пункта меню информация о количестве чисел и их сумме копируется в буфер обмена ("55, = 1 +2 +3 +4 +5 +6 +7 +8 +9 +10"), стирая его содержимое. Будьте осторожны с его использованием.

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

Cancel - Отмена операции, ни одна из операций не проводится.

Control - Вызов меню установок. Вызывается меню, почти аналогичное меню, вызываемому при нажатии на иконку в трее правой кнопкой мыши.

Специальные установки:

Не все установки программы доступны для изменения через ее меню. Для изменения некоторых из установок вам придется вручную редактировать секцию [Recognition] файла настроек K-Mania.ini в подкаталоге Windows.

Вот как выглядит эта секция целиком:

[Recognition]
Include1=MS Sans Serif, MS Serif*, Microsoft Sans Serif, Comic Sans MS, Arial*, Helv*, Times*, Courier*, Lucida*, Garamond, Georgia, Fixedsys, Terminal, System, Verdana, Tahoma, Trebuchet*, Bitstream*
Include2=*
Exclude=Wingdings*, Webdings*, Marlett*, Algerian*, Brush Script*, Matura MT Script*, MT Extra*, Playbill*, Symbol*, CommonBullets, Monotype Sorts, Arial Unicode MS, Gulim, GulimChe, MS Gothic, MS Hei, MS Song,MS Mincho
Italic=0
Bold=1
Underlined=1
Chars0=\20-\7F,\C0-\FF
Chars161=\20-\7F,\B6-\FE
Chars238=\20-\7F,\C0-\FF
Chars204=\20-\7FЁБГДЖЗИЙКЛМНОПУФЦЧШЩЪЫЬЭЮЯёбвгджзийклмнптуфцчшщъыьэюя
Chars186=\20-\7F,\C0-\FF
Sizes=8-12,14
Multicolor=0
Multifont=0
Line align=10
MaxNFonts=256
KIl1ByTrash=1
Chars=\20-\7FЁБГДЖЗИЙКЛМНОПУФЦЧШЩЪЫЬЭЮЯёбвгджзийклмнптуфцчшщъыьэюя
Database Preload=0
Flip=1
MaxDepth=1
KIl1BySpacing=1
KIl1BySyntax=1
KIl1ByFontAndColor=1

Пояснения:

Установка единицы разрешает, а нуля - отменяет выбранную возможность. Например:

Italic=0
Bold=1
Underlined=1

Распознавание наклонного текста запрещено, а жирного и подчеркнутого - разрешено.

Для не включения шрифтов в базу данных при сканировании шрифтов необходимо перечислить их в параметре Exclude:

Exclude=Wingdings*, Webdings*, Marlett*, Algerian*, Brush Script*, Matura MT Script*, MT Extra*, Playbill*, Symbol*, CommonBullets, Monotype Sorts, Arial Unicode MS, Gulim, GulimChe, MS Gothic, MS Hei, MS Song, MS Mincho

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

Sizes=8-12,14

В данном примере величина шрифтов ограничена от 8 до 12 и 14. Максимальное возможное значение - 31, минимальное - 5, 6 или 7 (в зависимости шрифта). Задание максимального количество шрифтов при чтении в базу данных ограничивается параметром MaxNFonts.
Т.к. написание некоторых шрифтов очень похоже (отдельные их буквы при определенных параметрах на экране выглядят одинаково), то для предотвращения ошибочного распознавания и правильного выбора распознаваемых шрифтов они разбиты на две группы, шрифты в которых задаются параметрами Include1 и Include2. Вначале для распознавания берутся шрифты из первой группы, а потом из второй. По умолчанию для второй группы стоит использование всех шрифтов:

Include2=*

Если вам нужно распознавание только шрифта MS Sans Serif, вы можете совсем отключить вторую группу и включить в первую только нужный вам шрифт:

Include1=MS Sans Serif
Include2=

Для ограничения на распознаваемые символы в заданных наборах символов используются параметры Chars:

Chars0=\20-\7F,\C0-\FF
Chars161=\20-\7F,\B6-\FE
Chars238=\20-\7F,\C0-\FF
Chars204=\20-\7FЁБГДЖЗИЙКЛМНОПУФЦЧШЩЪЫЬЭЮЯёбвгджзийклмнптуфцчшщъыьэюя
Chars186=\20-\7F,\C0-\FF
Chars=\20-\7FЁБГДЖЗИЙКЛМНОПУФЦЧШЩЪЫЬЭЮЯёбвгджзийклмнптуфцчшщъыьэюя

Вы можете определить символы, используя их шестнадцатиричные коды или вписав их вручную.

Примечание: Все эти настройки вступают в действии при первом пересканировании шрифтов, поэтому если вы их изменили - сделайте повторное пересканирование.

Заключение


Автор Kleptomania поддерживает активную обратную связь с пользователями программы. Любой пользователь может может высказать свои пожелания по дальнейшему развитию программы, которые автор воплощает в жизнь. Для собирания статистики о желаниях пользователь открыты специальные листы рассылки, по количеству подписчиков на которые и определяется та или иная область развития программы. Для уточнения тем и адресов рассылки смотрите справочную систему программы.
Kleptomania распространяется как ShareWare со сроком оценочного использования 21 день. Незарегистрированная версия программы может добавлять некоторый текст об использовании и распространении программы и о ее регистрации, типа:"*** Sure some your friends are waiting for Kleptomania ***" ("Уверен, ваши друзья ждут - не дождутся программы Kleptomania"). Стоимость регистрации программы составляет $30.

Сайт разработчиков Kleptomania : ссылка