For the complete documentation index, see llms.txt. This page is also available as Markdown.

9.6.图像扫描仪

在 FreeBSD 中,图像扫描仪的访问通过 SANE (Scanner Access Now Easy) 提供,该软件在 FreeBSD Ports 中可用。

9.6.1. 检查扫描仪

在配置之前,检查扫描仪是否受 SANE 支持非常重要。

将扫描仪连接好后,运行以下命令以获取所有连接的 USB 设备:

# usbconfig list

输出应类似于以下内容:

ugen4.2: <LITE-ON Technology USB NetVista Full Width Keyboard.> at usbus4, cfg=0 md=HOST spd=LOW (1.5Mbps) pwr=ON (70mA)
ugen4.3: <Logitech USB Optical Mouse> at usbus4, cfg=0 md=HOST spd=LOW (1.5Mbps) pwr=ON (100mA)
ugen3.2: <HP Deskjet 1050 J410 series> at usbus3, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON (2mA)

运行以下命令获取 idVendoridProduct

# usbconfig -d 3.2 dump_device_desc

注意

扫描仪为即插即用设备,更换连接的 USB 端口后,usbconfig list 的输出内容也会改变。

输出应类似于以下内容:

ugen3.2: <HP Deskjet 1050 J410 series> at usbus3, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON (2mA)

bLength = 0x0012
bDescriptorType = 0x0001
bcdUSB = 0x0200
bDeviceClass = 0x0000  <Probed by interface class>
bDeviceSubClass = 0x0000
bDeviceProtocol = 0x0000
bMaxPacketSize0 = 0x0040
idVendor = 0x03f0
idProduct = 0x8911
bcdDevice = 0x0100
iManufacturer = 0x0001  <HP>
iProduct = 0x0002  <Deskjet 1050 J410 series>
bNumConfigurations = 0x0001

若获得了 idVendoridProduct,需要在 SANE 支持的设备列表 中检查扫描仪是否受支持,可通过 idProduct 筛选。

9.6.2. SANE 配置

SANE 通过后端提供对扫描仪的访问。为了能在 FreeBSD 上扫描,必须安装 Port graphics/sane-backends,可运行以下命令安装:

技巧

某些 USB 扫描仪需要加载固件。例如,上面使用的 HP 扫描仪,需要安装 Port print/hplip

安装完必要的包后,必须配置 devd(8),让 FreeBSD 能访问扫描仪。

saned.conf 文件添加到 /usr/local/etc/devd/saned.conf,内容如下:

  • vendor: 是通过运行 usbconfig -d 3.2 dump_device_desc 命令获得的 idVendor

  • product: 是通过运行 usbconfig -d 3.2 dump_device_desc 命令获得的 idProduct

之后,必须运行以下命令重新启动 devd(8)

SANE 后端包括 scanimage(1),可以用来列出设备并执行图像采集。

执行 scanimage(1) 并使用 -L 参数列出扫描仪设备:

输出应类似于以下内容:

如果 scanimage(1) 无法识别扫描仪,将出现以下消息:

scanimage(1) 识别扫描仪后,配置就完成了,扫描仪现在可以使用。

要启用该服务并让它在启动时运行,执行以下命令:

虽然可以通过命令行使用 scanimage(1) 执行图像采集,但通常更倾向于使用图形界面扫描图像。

表 6. 图形扫描程序

名称
许可证

skanlite

GPL 2.0

GNOME Simple Scan

GPL 3.0

XSANE

GPL 2.0

最后更新于