我正在尝试制作一个适用于 Linux 上的扫描仪的应用程序(我正在使用理智的后端)。扫描仪工作正常;我正在使用我的应用程序获取图像,但它不是 A4 格式。分辨率为 1696*3743。我使用了 sane_get_parametrs(),得到了这个:
帧格式:1
最后一帧:1
每行字节数:5088
每行像素:1696
线路:3743
深度:8
这就是我想使用我的应用程序调整扫描仪的原因。当我使用 sane_get_option_descriptor() 时,我得到了以下选项:
- 12 - 设置扫描图像的分辨率。
- 13 - 设置扫描图像的水平分辨率。
- 14 - 设置扫描图像的垂直分辨率。
- 44 - 扫描区域的左上 x 位置。
- 45 - 扫描区域的左上 y 位置。
- 46 - 扫描区域的右下 x 位置。
- 47 - 扫描区域的右下 y 位置。
使用 sane_control_option() 我发现选项号 12 的分辨率为 400 dpi,13 的分辨率为 200 dpi,14 的分辨率为 320 dpi。我全部改成 400 dpi,再次检查,sane_control_option() 说所有选项都有 400 dpi;但是,我得到了一个与 A4 格式相同的图像 =(。我也尝试使用 44-47 选项,我更改了扫描区域,但结果一次又一次地相同。看起来它向我表明接受了更改,但它实际上没有接受。函数 sane_control_option() 总是返回“好”状态。所以,我很困惑,我将不胜感激。