Как я могу запустить сканер из браузера?
У меня есть сканеры Fujitsu fi-6130 TWAIN/ISIS, которые я хотел бы запускать с помощью кнопки на веб-странице jQuery Rails. Мало того, что мне нравится, когда страница сканирует сканеру "идти", я также хотел бы загрузить полученный файл через Paperclip после сканирования (одной) страницы - в идеале, не требуя от пользователя навигации виджета файлового проводника до найдите файл вручную.
Каждый сканер является usb, прикрепленным к рабочему столу Windows XP, хотя мы можем заменить эти настольные компьютеры для центров обработки вызовов на Google Chrome OS.
Этот вопрос задавали почти год назад, но в основном получали предложения, требующие использования коммерческих продуктов IE.NET стоимостью в несколько сотен долларов - Взаимодействие с сканером конечного пользователя с webapp (интеграция с веб-сканером)
Ответы
Ответ 1
Это невозможно из непосредственно на стандартной странице HTML/js. js не имеет прав доступа к периферийным устройствам, таким как сканеры.
Возможно, это будет возможно с использованием flash или silverlight, но вы подозреваете, что у вас есть проблемы с разрешениями. Там статьи здесь и здесь, но это может быть ) слишком вовлечены и b) не совсем то, что вы после.
Если вы управляете машинами, веб-приложение будет работать, я бы рекомендовал использовать простой настольный клиент для выполнения сканирования и подключения к нему изнутри веб-страницы, открыв локальный порт
поэтому js вызывает вызов AJAX (скажем) http://localhost:1234/Services/Scan, который возвращает изображение
Изменить: Что касается написания настольного клиента, у вас есть несколько вариантов. Я лично рекомендую вам не пытаться сделать это в PERL/PHP, поскольку они, похоже, не являются подходящим инструментом для этой работы, и я подозреваю, что вы в конечном итоге загрузите COM-объекты, чтобы попытаться получить доступ к устройствам TWAIN (и все мы знаете, сколько удовольствия это...)
В комментариях вы указали, что вам не нравится Visual Studio. Поэтому, если вы знакомы с Java, я бы посоветовал вам взглянуть на JTwain (коммерчески, но, похоже, хорошего качества) или начните читать здесь. NB: Я не являюсь частым разработчиком Java, поэтому не могу гарантировать, что все вышеперечисленное является именно тем, что вам нужно.
Кроме того, я бы предложил С++ с использованием другой IDE (хотя это не было бы OS-агностиком)
Ответ 2
Существует решение под названием Dynamic Web TWAIN от Dynamsoft, которое предоставляет браузер TWAIN на основе браузера для получения изображений с устройств TWAIN, а также редактирования и сохраняя их в удаленных базах данных.
Ответ 3
Как отметил @Basic, JTwain можно использовать для создания такого решения. Фактически разработчик JTwain создал ScannerJS, который позволяет сканировать непосредственно из браузеров, таких как IE, Chrome и Firefox, используя JavaScript. Чтобы использовать его на своих веб-страницах, вам необходимо:
Включить scanner.js:
<html lang="en"><head>
<script src="//asprise.azureedge.net/scannerjs/scanner.js" type="text/javascript"></script>
и вызовите scanner.scan
:
function scanToWebPageAndUploadToWebServer() {
scanner.scan(displayImagesOnPage,
{
"twain_cap_setting": {
"ICAP_PIXELTYPE": "TWPT_GRAY",
"ICAP_XRESOLUTION": "200",
"ICAP_YRESOLUTION": "200"
},
"prompt_scan_more": true,
"discard_blank_pages": "false",
"blank_page_threshold": "0.02",
"output_settings": [
{
"type": "return-base64-thumbnail",
"format": "jpg",
"thumbnail_height": 200
},
{
"type": "upload",
"format": "pdf",
"pdf_force_black_white": "false",
"pdfa_compliant": "false",
"pdf_text_line": "By ${USERNAME} on ${DATETIME}",
"exif": {
"DocumentName": "Doc Scan Powered by Asprise.com",
"UserComment": "Scanned using Asprise software"
},
"upload_target": {
"url": "https://asprise.com/scan/applet/upload.php?action=dump",
"max_retries": 2,
"post_fields": {
"provider": "Asprise"
},
"cookies": "name=Asprise; domain=asprise.com",
"auth": "user:pass",
"headers": [
"Referer: http://asprise.com"
],
"log_file": "null",
"max_operation_time": 600
}
}
]
}
);
}
Ответ 4
Вы можете использовать подписанный апплет, используя библиотеку, такую как MMS-вычисления.
Вы можете увидеть его в использовании в апплете в кодовой базе OpenKM.
Ответ 5
Кажется, имеется набор инструментов веб-API для сканеров серии Fujitsu.
В основном это приложение, которое вы устанавливаете на клиентскую машину, где сканер принимает вызовы через JSON или Silverlight и отправляет их драйверам сканера.
http://uk.emc.com/enterprise-content-management/captiva/cloud-toolkit.htm
Я только что загрузил его и читаю документы, поэтому не могу ручаться.