Vergleich von Dokumentenscanning-Protokollen.

Blogkategorie: TWAIN.NET

25.08.2025

Moderne Dokumentenverarbeitungssysteme werden zunehmend mit Peripheriegeräten integriert, um digitale Kopien von Papiermedien zu erstellen. Die zentrale Frage bei der Entwicklung solcher Lösungen ist die Wahl eines Protokolls für die Interaktion mit einem Bild-/Dokumentenscanner. In diesem Artikel analysieren wir die wichtigsten Standards, bewerten ihre Vorteile und Einschränkungen und betrachten, wie ihre Unterstützung mithilfe des VintaSoft TWAIN .NET SDK implementiert werden kann.



1. Scannen von Dokumenten mit TWAIN-Scannern

TWAIN ist ein Standard, der ein Softwareprotokoll und eine API (Programmierschnittstelle) für die Kommunikation zwischen Softwareanwendungen und Bildverarbeitungsgeräten wie Scannern und Digitalkameras definiert.

TWAIN ist ein Standard und gewährleistet daher die einheitliche Interaktion zwischen verschiedenen Geräten und Anwendungen. Dies vereinfacht die Entwicklung und Nutzung von Software zur Bildbearbeitung.


1.1. Unterstützte Betriebssysteme

Der TWAIN-Standard unterstützt die Betriebssysteme Windows, Linux und macOS.


1.2. Verfügbarkeit eines Gerätetreibers

Für die Arbeit mit einem TWAIN-Gerät muss ein TWAIN-Treiber im Betriebssystem installiert sein.

Der TWAIN-Treiber für einen Bildscanner wird in den meisten Fällen vom Hersteller des Bildscanners entwickelt. Dadurch ermöglicht der TWAIN-Treiber den Zugriff auf alle Funktionen des Bildscanners und gewährleistet maximale Arbeitsgeschwindigkeit.

Der TWAIN-Standard ist der gängigste und grundlegendste Standard für die Arbeit mit Bildscannern unter Windows. Fast alle Bildscanner verfügen über einen TWAIN-Treiber für Windows.

Im MomentDie Mitarbeiter von VintaSoft haben bisher nur funktionierende TWAIN-Treiber für Linux von Kodak gesehen.

Den Mitarbeitern von VintaSoft ist nichts über die Existenz von TWAIN-Treibern für macOS für moderne Bildscanner bekannt. In den Apple-Foren findet man Informationen darüber, dass Apple die Unterstützung des TWAIN-Standards in seinem macOS-Betriebssystem um 2019 offiziell eingestellt hat.


1.3. Übertragung eines Bildes von einem Bildscanner an eine Client-Anwendung

Der TWAIN-Standard definiert drei Modi für die Übertragung eines gescannten Bildes von einem Bildscanner an eine Client-Anwendung. Der Modus "Nativ" ermöglicht die Übertragung eines Bildes als Windows-Bitmap-Objekt. Der Modus "Speicher" ermöglicht die Übertragung eines Bildes über den Speicher, d. h. die Daten werden als Byte-Array übertragen, das entweder Rohdaten oder kodierte Bilddaten (z. B. CCITT4 oder JPEG) enthält. Der Modus "Datei" ermöglicht das direkte Speichern des gescannten Bildes in einer Datei. Die drei verfügbaren Modi ermöglichen die Auswahl des Modus, der am besten zur Logik der Client-Anwendung passt und maximale Leistung und Flexibilität gewährleistet.


1.4. Arbeiten mit den Funktionen eines Bildscanners

Der TWAIN-Standard umfasst über 700 Seiten Text und beschreibt detailliert die Interaktion zwischen dem TWAIN-Treiber und der Anwendung. Der TWAIN-Standard ermöglicht die Nutzung nahezu aller Funktionen eines Bildscanners.


1.5. Die Geschwindigkeit des Bildscanners

Die Verwendung des TWAIN-Standards bietet eine hervorragende Arbeitsgeschwindigkeit mit einem Bild-/Dokumentenscanner.


1.6. Technologieunterstützung

Der TWAIN-Standard wird von der "TWAIN Working Group" (Website https://twain.org) entwickelt - einer gemeinnützigen Organisation, die den TWAIN-Standard unterstützt und weiterentwickelt. Dieser Gruppe gehören verschiedene Hersteller von Bildscannern und Softwareentwicklungsunternehmen an.




2. Scannen von Dokumenten mit SANE-Scannern

SANE (Scanner Access Now Easy) ist eine Open-Source-Programmierschnittstelle (API), die eine standardisierte Schnittstelle für den Zugriff auf Rasterbildscanner bietet. SANE ermöglicht die Bildaufnahme von verschiedenen Geräten wie Flachbettscannern und Kameras. SANE trennt den Gerätetreiber klar von der Benutzeroberfläche des Geräts.


2.1. Unterstützte Betriebssysteme

Die SANE-API ist der gängigste und grundlegendste Standard für die Arbeit mit Bildscannern unter Linux.


2.2. Verfügbarkeit eines Gerätetreibers

Fast alle Bildscanner verfügen über einen SANE-Treiber für Linux.

SANE-Treiber werden vom Hersteller des Bildscanners oder von der SANE-Community bereitgestellt. SANE ist eine API und definiert lediglich die Architektur des SANE-Treibers. Die konkrete Implementierung des SANE-Treibers hängt vom jeweiligen Treiberentwickler ab. Die meisten SANE-Treiber werden von Entwicklern aus der SANE-Community entwickelt.

Für die Arbeit mit SANE-Geräten müssen Sie den SANE-Treiber unter Linux installieren. Die Liste der Geräte, die die SANE-API unterstützen, finden Sie hier: http://www.sane-project.org/sane-supported-devices.html


2.3. Übertragung eines Bildes von einem Bildscanner an eine Clientanwendung

Das SANE-Gerät überträgt Bilddaten über den Speicher, d. h. die gescannten Bilddaten werden als Byte-Array übertragen, das die "rohen" Bilddaten enthält.


2.4.Arbeiten mit Bildscannerfunktionen

Das Dokument, das die SANE-API definiert, ist kurz und beschreibt die Funktionalität für grundlegende Arbeiten mit dem Bildscanner. Die SANE-API definiert also eine API für die einfache Bilderfassung ohne Nutzung der erweiterten Funktionen des Bildscanners. Gleichzeitig steht es dem SANE-Treiberentwickler frei, Unterstützung für erweiterte Funktionen zu implementieren; diese liegen jedoch außerhalb der SANE-API.


2.5. Die Geschwindigkeit des Bildscanners

Die Verwendung der SANE-API gewährleistet eine gute Leistung mit dem Bild-/Dokumentenscanner.


2.6. Technologieunterstützung

Das SANE-Projekt (Website http://www.sane-project.org) ist ein Open-Source-Projekt, dessen Quellcode frei modifiziert und verbreitet werden kann, um die Zusammenarbeit innerhalb der Community zu fördern und kontinuierliche Verbesserungen und Aktualisierungen zu ermöglichen.


3. Scannen von Dokumenten mit eSCL-Scannern

eSCL (eXtensible Scanner Control Library) ist ein von der Mopria Alliance entwickelter Standard, der ein Bildscanprotokoll definiert, um drahtloses Scannen auf verschiedenen Geräten ohne Treiberinstallation zu ermöglichen. Das eSCL-Protokoll verwendet HTTP(S) und XML zur Kommunikation zwischen dem Bildscanner und der Anwendung, die den Bildscanner nutzt.


3.1. Unterstützte Betriebssysteme

Das eSCL-Protokoll kann unter Windows, Linux, macOS und Android verwendet werden. Es kann sowohl über ein kabelgebundenes als auch über ein drahtloses Netzwerk genutzt werden.


3.2. Verfügbarkeit eines Gerätetreibers

Für die Verwendung eines eSCL-Geräts ist keine Treiberinstallation im Betriebssystem erforderlich. Typischerweise handelt es sich bei einem eSCL-Gerät um ein Linux-Gerät, auf dem ein Webserver läuft, der Anfragen an das Gerät über das eSCL-Protokoll verarbeitet. Der Webserver bietet außerdem eine Weboberfläche, über die der Benutzer Scanparameter konfigurieren und Bildscanvorgänge bequem über einen Webbrowser verwalten kann.

Eine Liste der Geräte, die das eSCL-Protokoll unterstützen, finden Sie hier: https://mopria.org/it/certified-products


3.3. Übertragung eines Bildes von einem Scanner an eine Client-Anwendung

Der eSCL-Standard legt fest, dass jedes eSCL-Gerät die Übertragung eines gescannten Bildes als JPEG- oder PDF-Stream unterstützen muss. Damit eine Client-Anwendung ein gescanntes Bild von einem Scanner empfangen kann, werden folgende Schritte ausgeführt:

Wenn das gescannte Bild sofort in einer Datei oder Datenbank gespeichert werden muss, ist die Übertragung des Bildes vom Scanner an die Client-Anwendung optimal. Wenn Sie das gescannte Bild nach dem Scannen anzeigen möchten, müssen Sie das JPEG-Bild dekodieren oder die PDF-Seite rendern. Dies ist ein Nachteil, da prinzipiell ein unnötiger Zwischenschritt der Kodierung und Dekodierung des gescannten Bildes stattfindet.

Der eSCL-Standard definiert auch die Möglichkeit, Rohdaten von einem Scanner zu empfangen. Diese Option ist jedoch nicht obligatorisch und wird nicht von allen eSCL-Scannern unterstützt.


3.4.Arbeiten mit den Funktionen eines Bildscanners

Die eSCL-Protokollspezifikation umfasst über 70 Seiten und definiert die Funktionalität für grundlegende Arbeiten mit einem Bildscanner. Das eSCL-Protokoll eignet sich also für einfaches Scannen von Bildern ohne Nutzung der erweiterten Funktionen eines Bildscanners.


3.5. Die Geschwindigkeit des Bildscanners

Die Geschwindigkeit des Bildscannens hängt von der Geschwindigkeit des Netzwerks ab, über das der eSCL-Bildscanner und die Client-Anwendung verbunden sind. In den meisten Fällen bietet die Verwendung des eSCL-Protokolls eine gute Arbeitsgeschwindigkeit mit einem Bild-/Dokumentenscanner.


3.6. Technologieunterstützung

Die Mopria Alliance (Website https://mopria.org) ist eine Organisation von Druckerherstellern und Softwareentwicklern, die universelle Standards für drahtloses Drucken und Scannen von Mobilgeräten entwickelt und fördert. Die Mopria-Standards ermöglichen es zertifizierten Geräten, sich im Netzwerk zu finden und Daten auszutauschen. So wird einfaches und komfortables Drucken und Scannen von einer Vielzahl mobiler Geräte wie Smartphones und Tablets ermöglicht.




4. Scannen von Dokumenten mit WIA-Scannern

WIA steht für Windows Image Acquisition (Windows-Bilderfassung). Es ist eine Komponente des Windows-Betriebssystems, die es Software ermöglicht, mit Bildverarbeitungsgeräten wie Scannern und Digitalkameras zu kommunizieren. WIA bietet eine API (Programmierschnittstelle) für Entwickler, um Anwendungen zu erstellen, die auf Bilder von diesen Geräten zugreifen können.


4.1. Unterstützte Betriebssysteme

WIA ist eine Komponente des Windows-Betriebssystems, daher können WIA-kompatible Geräte nur unter Windows verwendet werden.


4.2. Verfügbarkeit eines Gerätetreibers

Für die Funktion eines WIA-Geräts ist kein separater WIA-Treiber erforderlich, da ein Standard-WIA-Treiber bereits im Windows-Betriebssystem enthalten ist. Ein WIA-fähiger Scanner ist nach der Installation unter Windows sofort einsatzbereit.


4.3. Übertragung eines Bildes von einem Scanner an eine Clientanwendung

Die WIA-API definiert zwei Modi für die Übertragung eines gescannten Bildes von einem Scanner an eine Clientanwendung. Der Modus "Speicher" ermöglicht die Übertragung eines Bildes über den Speicher, d. h. die Daten werden als Byte-Array übertragen. Der Modus "Datei" ermöglicht das direkte Speichern des gescannten Bildes in einer Datei.


4.4. Arbeiten mit Bildscannerfunktionen

Informationen zur WIA-API finden Sie auf der Microsoft-Website: https://learn.microsoft.com/en-us/previous-versions/windows/desktop/wia/-wia-wia-application-programming-interface

Die WIA-API definiert eine API zum einfachen Scannen von Bildern ohne Verwendung erweiterter Bildscannerfunktionen.


4.5. Die Geschwindigkeit des Bildscanners

Die Verwendung der WIA-API bietet eine gute Leistung mit einem Bild-/Dokumentenscanner.


4.6. Technologieunterstützung

Die WIA-API wird von Microsoft unterstützt.


5. Scannen von Dokumenten mit ICA-Scannern

ICA steht für Image Capture (Bildaufnahme). ICA ist ein Apple-Framework, das entwickelt wurde, um "Mediengeräte zu suchen und diese programmatisch von Ihrer Anwendung aus zu steuern".

Das ICA-Framework ist Teil des macOS-Betriebssystems und daher der gängigste und grundlegendste Standard für die Arbeit mit Bildscannern unter macOS.

Für die Verwendung eines ICA-Geräts muss der ICA-Treiber unter macOS installiert sein.


6.Dokumente mit ISIS-Scannern scannen

Der ISIS-Scanstandard ist eine Spezifikation für eine "Bild- und Scannerschnittstelle", die von Pixel Translations (heute Teil von OpenText) zur Ansteuerung von Bildverarbeitungsgeräten wie Scannern entwickelt wurde. Er ist bekannt für seine hohe Leistungsfähigkeit, Modularität und die vollständige Spezifikation zur Integration von Hochgeschwindigkeitsscannern in Anwendungen, wodurch diese mit oder über ihrer Nenngeschwindigkeit arbeiten können. Im Gegensatz zum verbreiteteren TWAIN-Standard war ISIS ursprünglich für Produktionsumgebungen konzipiert und erforderte von den Anbietern Lizenzgebühren für den Treiber, was ihn im Unternehmensbereich weniger beliebt machte.

Für die Arbeit mit einem ISIS-Gerät muss der ISIS-Treiber im Betriebssystem installiert sein.

ISIS-Treiber wurden ursprünglich von Pixel Translations entwickelt, das später Teil von EMC (heute OpenText) wurde. Scannerhersteller bezahlen EMC für die Nutzung des ISIS-Treibers und dessen Integration in ihre Hardware oder erwerben Entwicklungskits und Beispielcode von Unternehmen wie DELL EMC Captiva, um ihre eigenen ISIS-Treiber zu erstellen.

Die Verwendung des ISIS-Treibers bietet die beste/maximale Geschwindigkeit für Ihren Dokumentenscanner.


7. Welches Bildscanprotokoll wählen?

Die Wahl des Scanprotokolls sollte nicht nur auf den technischen Eigenschaften der Geräte, sondern auch auf den tatsächlichen Betriebsbedingungen, den Geschäftsanforderungen und den Infrastrukturbeschränkungen basieren.

Scannertyp und -modell:

Tipp: Erstellen Sie vor Beginn der Entwicklung eine Liste der Scannermodelle, mit denen Ihre Software kompatibel sein soll, und überprüfen Sie deren Spezifikationen auf der Website des Herstellers.


Anforderungen an Qualität und Geschwindigkeit:


Funktionen des Workflows:

Beispiel: Wenn Sie ein Archiv mit Tausenden von doppelseitigen Blättern haben,Fehlende Duplexunterstützung kann die Betriebszeit verdoppeln.


Implementierungs- und Supportkosten:
Für den Projektstart mit begrenztem Budget ist TWAIN die sinnvollste Wahl.


8. Implementierung im VintaSoft TWAIN .NET SDK

VintaSoft TWAIN .NET SDK ist eine professionelle .NET-Bibliothek für das Scannen von Bildern. Sie ermöglicht die Entwicklung von .NET-Anwendungen zur Steuerung von TWAIN-Bildscannern unter Windows und Linux, SANE-Bildscannern unter Linux und eSCL-Bildscannern unter Windows und Linux.

Das VintaSoft TWAIN .NET SDK bietet außerdem eine JavaScript-API und den VintaSoft Web TWAIN-Dienst. Damit können Webentwickler schnell und einfach browserübergreifende Webanwendungen erstellen, die Bilder von TWAIN-Scannern unter Windows und Linux, SANE-Scannern unter Linux und eSCL-Scannern unter Windows und Linux empfangen. Die entwickelte Webanwendung ist mit allen gängigen Webbrowsern kompatibel.

Die Wahl des Scanprotokolls ist eine strategische Entscheidung für Entwickler von Dokumentenmanagementsystemen. TWAIN ist nach wie vor ein universeller Standard, und das VintaSoft TWAIN .NET SDK bietet eine komfortable und flexible Implementierung mit Unterstützung für TWAIN, WIA (über TWAIN), SANE und eSCL. Durch die optimale Integration erreichen Sie einen stabilen Betrieb mit Scannern verschiedener Hersteller und in unterschiedlichen Umgebungen - von Desktop-Anwendungen bis hin zu Cloud-Diensten.