Перейти к содержанию

TWAIN

Эта статья находится на начальном уровне проработки, в одной из её версий выборочно используется текст из источника, распространяемого под свободной лицензией
Материал из энциклопедии Руниверсалис
TWAIN
Разработчик TWAIN Working Group
Опубликован Февраль 1992
Последний выпуск TWAIN 2.5 (4 ноября 2021; 4 года назад (2021-11-04))
Открытый формат? Да

TWAIN — стандартный протокол и интерфейс (API), определяющий взаимодействие между программами и устройствами захвата изображения, такими как сканеры и цифровые камеры.

Последней версией стандарта TWAIN является TWAIN 2.5, опубликованный 4 ноября 2021 года.

История

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

Официально «TWAIN» не является аббревиатурой, хотя широко распространена версия англ. Technology Without Any Interesting Name (технология без какого-либо значимого названия). Слово «TWAIN» — устаревшая форма «TWO» (два, двое), взято из стихотворения Киплинга «Баллада о востоке и западе» — англ. …and never the twain shall meet…, отражает сложность связи сканера с компьютером и приведено к верхнему регистру для лучшего выделения.

Цель рабочей группы TWAIN — продолжать развивать стандарт для соответствия современным технологиям.

Интерфейс

Поскольку TWAIN не является протоколом аппаратного уровня, производитель устройств для получения изображений может предоставлять TWAIN-совместимый драйвер. Таким образом, становится возможным захват изображений не только со сканеров, но и некоторых веб-камер, не только при помощи Video for Windows, DirectShow или WIA, но и через TWAIN. Благодаря открытости стандарта становится возможным использование оборудования с программным обеспечением сторонних поставщиков, например камер для микроскопических систем Leica Microsystems[англ.][1].

В процессе работы используется несколько абстракций: англ. Data source manager, управляющий всеми доступными в системе TWAIN-совместимыми устройствами и англ. Data source object для каждого отдельного устройства, отвечающий за передачу и настройки захвата получаемого кадра.

Взаимодействие клиентского приложения и устройства можно представить следующим образом[2]:

  1. Диалог выбора устройства захвата (Data source manager)
  2. Открытие источника данных (Data source) и настройка параметров захвата, с установкой разрешения изображения, разрядности и пр.
  3. Клиентское приложение опрашивает устройство. Доступны два механизма: опроса и callback. В последнем случае устройство само сообщает о готовности изображения для передачи.
  4. Собственно передача данных от DS. Существует несколько механизмов передачи:
    1. Native — в Windows это Device independent bitmap в памяти
    2. Memory — блоки пикселей в буферах памяти
    3. File — DS записывает изображение непосредственно в файл (не обязательно поддерживается)
  5. Закрытие источника данных

См. также

Примечания

  1. Leica Microsystems CCD Digital Color Camera. Дата обращения: 5 марта 2022. Архивировано 5 марта 2022 года.
  2. What Is TWAIN?. Дата обращения: 15 февраля 2018. Архивировано 1 ноября 2012 года.

Ссылки