Аналоги XSane
XSane — это графический интерфейс сканирования для SANE (Scanner Access Now Easy). Он использует SANE-библиотеку для общения со сканерами и предназначен для получения изображений со сканеров.
XSane может делать следующее с полученными изображениями:
* Открывать изображение в программе просмотра
* Сохранять изображение в файл
* Делать ксерокопию
* Создавать многостраничный документ
* Отправлять факс или электронную почту
Альтернативы для XSane
Android iOS (iPhone / iPad)
NAPS2 — это простое и удобное приложение для сканирования документов.
Simple Scan — это простое в использовании приложение, которое позволяет пользователям быстро подключать свои сканеры.
Simple Scan — это простое в использовании приложение, которое позволяет пользователям подключить сканер и быстро получить изображение / документ в соответствующем формате.
Стороннее программное обеспечение для пленочных сканеров и планшетных сканеров.
- Платная Windows iPhone Mac OS
Стороннее программное обеспечение для пленочных сканеров и планшетных сканеров.
gscan2pdf может сканировать, очищать и выполнять OCR на отсканированных или импортированных изображениях (вкл. существующие PDF-файлы, DjVus или другие типы файлов).
gscan2pdf может сканировать, очищать сканирование и выполнять OCR на отсканированных или импортированных изображениях (включая существующие PDF-файлы, DjVus или другие типы файлов), а также создавать PDF- и DjVu-файлы со встроенным OCR-текстом. Работает вместе с тессерактом, клинописью и OCR движками.
Scanitto Pro — это приложение под управлением Windows для сканирования изображений, прямой печати и копирования.
Это программное обеспечение сканера. Легкое, быстрое и не перегруженное множеством ненужных функций. Точно настройте параметры сканера, сделайте копии документов одним нажатием и сохраните документы в многостраничных PDF-файлах — выбор, о котором вы никогда не пожалеете!
Простой в использовании интерфейс кроссплатформенного сканирования для SANE (Scanner Access Now Easy).
- Бесплатная Windows Mac OS
SwingSane — это мощный кроссплатформенный Java-клиент с открытым исходным кодом (внешний интерфейс) для серверов Scanner Access Now Easy (SANE) (бэкэнды). SwingSane предоставляет доступ к сканерам, подключенным к серверам SANE в сети на любой платформе, поддерживающей Java и Swing. Он также может использоваться с вашим собственным приложением для предоставления кода Swing для доступа к сканерам SANE.
Что в этом списке?
С помощью пользователей мы собираем каталог похожих друг на друга программ, чтобы вы могли подобрать альтернативу и скачать их. На сайте можно скачать популярные программы для Windows, Mac Os, Android и iPhone
Сканирование по сети – это просто
Прошивка
Cкачать ее можно тут.
Способ прошивки может меняться в зависимости от модели роутера. Эта инструкция для роутеров, как у меня.
Устанавливаем прошивку с помощью утилиты восстановления прошивки от асус.
- Подключаем роутер к компьютеру через Ethernet(через любой из lan-портов)
- Переводим роутер в режим восстановления – выключаем питание роутера, зажимаем кнопку Reset/Restore, включаем питание, удерживаем кнопку до тех пор, пока индикатор питания не начнет моргать
- Никаких настроек ip-адресов делать не надо, разве что присвоить компу адрес из 192.168.1.0/255.255.255.0 отличный от 192.168.1.1, и запустить пинг на 192.168.1.1
- Запускаем программу Firmware Restoration, отключаем фаервол(об этом просит программа), выбираем файл прошивки с расширением .trx
Настройка сканирования и печати
Первым делом меняем пароль роутера:
Настраиваем доступ в интернет:
Настраиваем сервер DHCP, и меняем адрес, если не устраивает 192.168.1.1. Я меняю его на 192.168.11.1, в дальнейшем вся настройка будет на этот адрес:
Сканирование
Далее, переходим к настройке пакетов.
Жмем Update package lists(если хотите поставить пакет, эту операцию нужно делать при каждой перезагрузке роутера), ищем через поле Filter и ставим пакеты:
- nano – более дружелюбный, чем vi, редактор
- sane-backends, sane-frontends
- xinetd – для доступа по сети
- kmod-usb-printer, kmod-usb-ohci, kmod-usb-uhci, kmod-usb2, kmod-usb-storage – поддержка различных USB-устройств на уровне ядра
Перезагружаем роутер.
Подключаемся к роутеру по ssh.
Команда sane-find-scanner должна выдать примерно следующее:
found USB scanner (vendor=0x04e8 [Samsung], product=0x341b [SCX-4200 Series]) at libusb:001:004
# Your USB scanner was (probably) detected. It may or may not be supported by
# SANE. Try scanimage -L and read the backend’s manpage.
# Not checking for parallel port scanners.
# Most Scanners connected to the parallel port or other proprietary ports
# can’t be detected by this program.
Заметьте значения vendor=0x04e8 , product=0x341b , libusb:001:004 , они нам понадобится.
Теперь, либо вам повезет, либо придется сделать дополнительные настройки.
Мне не повезло:
root@OpenWrt:
No scanners were identified. If you were expecting something different,
check that the scanner is plugged in, turned on and detected by the
sane-find-scanner tool (if appropriate). Please read the documentation
which came with this software (README, FAQ, manpages).
Тут можно узнать, какой модели сканера какой backend соответствует. Samsung SCX-4220 соответствует backend sane-xerox_mfp.5.
Тут можно посмотреть мануал, из которого видно, что конфиг находится в файле /etc/sane.d/xerox_mfp.conf
Редактируем его:
Добавляем в файл строчку
usb 0x04e8 0x341b
и, на всякий случай, эту строку, как советуют на форумах
Версия backends в этой прошивке 1.0.20, и, что интересно, при использовании последней версии(кажется, 1.0.22, версия ядра 2.6), которую я устанавливал на прошивке от Олега, сканер у меня так и не определился. Описание такой ситуации я тоже встречал на форумах, поэтому выбрал прошивку с версией ядра 2.4
Сохраняем файл, проверяем:
# scanimage –L
device `xerox_mfp:libusb:001:004′ is a SAMSUNG ORION multi-function peripheral
Сканер определяется, все хорошо.
Теперь настроим доступ по сети:
Добавляем в файл строчку 192.168.11.0/24 (необходимо указать подсеть вашего роутера)
Добавляем в файл следующие строки:
service saned
<
socket_type = stream
server = /usr/sbin/saned
protocol = tcp
user = root
group = root
wait = no
disable = no
>
Запускаем xinetd в режиме вывода отладочной информации:
# xinetd -d
Service defaults
Bind = All addresses.
Only from: All sites
No access: No blocked sites
No logging
Service configuration: saned
> flags = IPv4
socket_type = stream
Protocol (name,number) = (tcp,6)
port = 6566
wait = no
user = 0
group = 0
Groups = no
PER_SOURCE = -1
Bind = All addresses.
Server = /usr/sbin/saned
Server argv = saned
Only from: All sites
No access: No blocked sites
No logging
11/9/2@07:43:31: DEBUG: 29656
11/9/2@07:43:31: DEBUG: 29656
11/9/2@07:43:31: NOTICE: 29656
11/9/2@07:43:31: NOTICE: 29656
11/9/2@07:43:31: DEBUG: 29656
Как видно, сервис запущен.
Если сервис не запустился, проверьте, чтобы в файле /etc/services была строчка saned 6566 , и, если она отсутствует, то добавьте.
Теперь скачаем и установим SaneTwain
В архиве инструкция и 2 файла – sanetwain.ds и scanimage.exe
запускаем scanimage.exe, указываем в настройках адрес роутера:
перезапускаем scanimage.exe:
Смотрим записи syslog в веб-интерфейсе:
Sep 2 07:59:19 OpenWrt daemon.debug saned[31278]: saned (AF-indep+IPv6) from sane-backends 1.0.20 starting up
Sep 2 07:59:19 OpenWrt daemon.debug saned[31278]: check_host: access by remote host: 192.168.11.139
Sep 2 07:59:19 OpenWrt daemon.debug saned[31278]: check_host: getaddrinfo for local hostname failed: Name or service not known
Sep 2 08:02:52 OpenWrt daemon.warn xinetd[29722]: Exiting.
Путем поиска по форумам выясняем, чтобы в этой ситуации все заработало, надо добавить в hosts запись с именем для адреса роутера:
killall xinetd
xinetd
Перезапускаем scanimage.exe(он глючный, возможно, только со второго раза все будет ок)
Видим, что все работает. Ура.
Теперь надо включить автозапуск xinetd в веб-интерфейсе роутера:
Перезапускаем роутер, проверяем работу еще раз.
Теперь копируем второй файл, sanetwain.ds, в каталог C:\Windows\twain_32\
После этого в программах с поддержкой twain можно пользоваться сканером, в том числе и в замечательной программе для создания скриншотов Screenshot Captor:
Печать
Теперь настроим печать по сети:
Устанавливаем пакет luci-app-p910nd.
Делаем следующие настройки в веб-интерфейсе роутера:
Убедимся, что сервер запустится при перезагрузке роутера:
и то, что он действительно запустился:
# ps|grep p9100
32079 root 680 S /usr/sbin/p9100d -b -f /dev/usb/lp0 0
Жмем «Пробная печать», ура!
Печать по сети на всех прошивках, которые я смотрел, настраивалась без проблем, так что я уверен, что у вас проблем тоже не возникнет.
Освобождение места на роутере под другие программы
Подключаемся по ssh.
Идея в том, чтобы удалить ненужные нам backends.
backends находятся в папке /usr/lib/sane/
Как видно из man, файлы нашего backend — libsane-xerox_mfp.so.1 и libsane-xerox_mfp.so.1.0.20
Соответственно, если вы не планируете подключать другой сканер, все остальные можно невозбранно удалить что освободит
root@OpenWrt:/usr/lib/sane# cd /usr/lib/sane/
root@OpenWrt:/usr/lib/sane# du -m
7 .
Около 3.5 мб! Почему 3.5 а не 7? Потому что в этом каталоге ровно половина файлов – символические ссылки на библиотеки, расположенные в этом же каталоге.
Способ удаления не самый изящный, но, тем не менее, действенный(mc установить не предлагать, под него уже нет места):
root@OpenWrt:/usr/lib/sane# rm libsane-a*
root@OpenWrt:/usr/lib/sane# rm libsane-b*
root@OpenWrt:/usr/lib/sane# rm libsane-c*
root@OpenWrt:/usr/lib/sane# rm libsane-d*
root@OpenWrt:/usr/lib/sane# rm libsane-e*
root@OpenWrt:/usr/lib/sane# rm libsane-f*
root@OpenWrt:/usr/lib/sane# rm libsane-g*
root@OpenWrt:/usr/lib/sane# rm libsane-h*
root@OpenWrt:/usr/lib/sane# rm libsane-i*
root@OpenWrt:/usr/lib/sane# rm libsane-j*
rm: cannot remove ‘libsane-j*’: No such file or directory
root@OpenWrt:/usr/lib/sane# rm libsane-k*
rm: cannot remove ‘libsane-k*’: No such file or directory
root@OpenWrt:/usr/lib/sane# rm libsane-l*
root@OpenWrt:/usr/lib/sane# rm libsane-m*
root@OpenWrt:/usr/lib/sane# rm libsane-n*
root@OpenWrt:/usr/lib/sane# rm libsane-o*
rm: cannot remove ‘libsane-o*’: No such file or directory
root@OpenWrt:/usr/lib/sane# rm libsane-p*
root@OpenWrt:/usr/lib/sane# rm libsane-q*
root@OpenWrt:/usr/lib/sane# rm libsane-r*
root@OpenWrt:/usr/lib/sane# rm libsane-s*
root@OpenWrt:/usr/lib/sane# rm libsane-t*
root@OpenWrt:/usr/lib/sane# rm libsane-u*
root@OpenWrt:/usr/lib/sane# rm libsane-v*
rm: cannot remove ‘libsane-v*’: No such file or directory
root@OpenWrt:/usr/lib/sane# rm libsane-w*
rm: cannot remove ‘libsane-w*’: No such file or directory
Главное — не увлечься, и не убить то, что нужно оставить
Теперь результат наглядно – до:
Редактируем файл
root@OpenWrt:/usr/lib/sane# nano /etc/sane.d/dll.conf
комментим # всестроки, не относящиеся к нашему backend(все, кроме xerox_mfp )
Теперь и scanimage запускается быстрее(он не тратит время на инициализацию всех backends), и хватит места, чтобы установить другие нужные сервисы.
P.S.
На форуме wl500g.info я читал замечания о том, что сканер в таком подключении работает медленнее, чем будучи подключенным напрямую к компу.
Давайте проверим… Сканируем лист А4 в цвете в разном разрешении.
600dpi через роутер(wifi, при этом смотрел ролик на youtube в 720p) 4мин 16сек, напрямую 1мин 47сек(через роутер реально в 2.5 раза медленнее);
300 dpi через роутер 62сек, напрямую 31сек;
150dpi через роутер 20сек, напрямую 15сек(тут разница совсем небольшая)
В принципе, для иллюстрации документов в формате А4 или распознавания текста хватит 150 dpi. В ситуации, когда один сканер на несколько человек и объемы сканирования небольшие, вполне себе ничего решение.
В ситуации, когда нужны высокие разрешения при больших объемах сканирования такое решение, естественно, не подойдет…