我使用WIA库扫描我的应用中的图像。我可以在我的应用程序中设置扫描仪设置(colorfull,grayscell,dpi ....),而不是每次都向最终用户扫描设置吗?
我使用下一个代码从扫描仪中获取图像
public ImageFile Scan()
{
try
{
CommonDialog dialog = new CommonDialog();
ImageFile image = dialog.ShowAcquireImage(
WiaDeviceType.ScannerDeviceType,
WiaImageIntent.ColorIntent,
WiaImageBias.MaximizeQuality,
WIA.FormatID.wiaFormatJPEG,false,false,false);
return image;
}
catch (COMException ex)
{
if (ex.ErrorCode == -2145320939)
{
throw new ScannerNotFoundException();
}
else
{
throw new ScannerException("COM Exception", ex);
}
}
}
答案 0 :(得分:2)
是的,但你必须写一堆代码。从DeviceManager.DeviceInfos开始枚举可用的设备。您需要用户提供一些指导,以选择她打算使用的特定设备。这会从DeviceInfos.Item生成一个DeviceInfo,调用它的Connect方法。这会产生一个Device,调用它的ExecuteCommand方法。这会生成一个Item,调用它的Transfer方法。这就产生了你需要的ImageFile。