ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ СКАНЕРОВ
Основу программного обеспечения сканеров, обычно, образует стандарт TWAIN. Этот стандарт определяет протокол стандартного программного обеспечения и интерфейс приложений для связи. TWAIN предназначен для применения в программном обеспечении с графическим интерфейсом, несет на себе функции панели управления сканером и осуществляет передачу данных от сканера в активную программу. TWAIN обеспечивает установку параметров и области сканирования, предварительное сканирование и просмотр, постобработку информации. Данный стандарт предусматривает поддержку цифровых камер.
Стандарт TWAIN определяет множество установленных функций и их параметров по управлению процессом сканирования. Указанные функции можно использовать при программировании с помощью языков высокого уровня. Достаточно полную информацию о формате функций стандарта TWAIN можно найти в на сервере: twain.org.
Программное обеспечение сканера может использовать SCL-команды, которые имеют вид ESC-последовательностей и позволяют посылать запросы (команды) в контроллер сканера и получать ответы (данные) от него. SCL-команды начинаются кодом 1Bh (ESC). Основной формат имеет вид:
ESC X (пробел игнорируется контроллером сканера).
Если Х [30h, 7Eh], то это управляющий код, если Х
[21h, 2Fh], то это параметризированный код (далее следует форматированный список параметров), если Х
[0h, 20h] или 7Fh, 80h, FFh, то это код ошибки.
Команды, посылаемые в контроллер сканера позволяют устанавливать и читать параметры сканирования: разрешающую способность, масштаб, положение и размеры сканируемого окна, тип данных, карты тона и цвета, направление сканирования, уровень интенсивности подсветки и уровень контрастности. Например:
ESC *a #R (установить разрешение по Х).
Формат данных возвращаемых сканером соответствует заданным размерам окна и установленному разрешению. Данные из сканера передаются как единый блок без заголовка, без помехозащищающего кодирования для обеспечения максимальной скорости передачи.
Сообщения об ошибках сканера накапливаются в стеке ошибок в виде кодов и по запросу могут быть считаны программой пользователя.