TWAIN

Из Википедии, бесплатной энциклопедии

TWAIN
Разработчик TWAIN Working Group
Опубликован Февраль 1992
Последний выпуск TWAIN 2.5 (4 ноября 2021; 2 года назад (2021-11-04))
Тип формата интерфейс программирования приложений
Открытый формат? Да
Сайт twain.org

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[en][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 года.

Ссылки[править | править код]