当前位置: 首页 > 编程语言 > C#

WindowsImageAcquisition-在C#中设置设备属性分享

时间:2023-04-11 00:47:21 C#

WindowsImageAcquisition-在C#中设置设备属性我有一个支持使用WIA扫描的C#(WinForm)程序。我试图在扫描一个或多个文档之前设置设备属性。主要是想设置扫描仪的纸张大小。下面是代码片段:foreach(PropertypropertyinselectedDevice.Properties){//WiaProperties.WiaDpsHorizo??ntalBedSizeismyconstantif(property.PropertyID==WiaProperties.WiaDpsHorizo??ntalBedSize){//Setpropertyvaluehere...}}我找到了horizo??ntalbedsize属性,但问题是如何将它设置为一个值?属性有一个set_Value属性,但它似乎引用了结果对象。所以我不知道如何在设备上设置属性?我正在做一个扫描项目,几乎没有WIA示例。这段代码是您要设置床尺寸、DPI等的地方。通过有关如何处理set_Value的示例查看SetProperty方法。以上就是C#学习教程:Windows图像采集-C#中设置设备属性的全部内容分享,如果对大家有用还需要进一步了解C#学习教程,希望大家多多关注——classScan{//仅扫描器设备属性(DPS)publicconstintWIA_RESERVED_FOR_NEW_PROPS=1024;公共常量intWIA_DIP_FIRST=2;publicconstintWIA_DPA_FIRST=WIA_DIP_FIRST+WIA_RESERVED_FOR_NEW_PROPS;publicconstintWIA_DPC_FIRST=WIA_DPA_FIRST+WIA_RESERVED_FOR_NEW_PROPS;publicconstintWIA_DPS_FIRST=WIA_DPC_FIRST+WIA_RESERVED_FOR_NEW_PROPS;publicconstintWIA_DPS_DOCUMENT_HANDLING_STATUS=WIA_DPS_FIRST+13;publicconstintWIA_DPS_DOCUMENT_HANDLING_SELECT=WIA_DPS_FIRST+14;publicconstintFEEDER=1;publicconstintFLATBED=2;公共constintDUPLEX=4;publicconstintFEED_READY=1;通用对话框();WIA.Device_scanner;publicvoidADFScan(){_dialog=newCommonDialogClass();_scanner=_dialog.ShowSelectDevice(WIA.WiaDeviceType.ScannerDeviceType,false,false);foreach(临pertyitemin_scanner.Items[1].Properties){switch(item.PropertyID){case6146://4为黑白,灰色为2,颜色1SetProperty(item,2);休息;case6147://每英寸点数/水平SetProperty(item,100);休息;case6148://每英寸点数/垂直SetProperty(item,100);休息;case6149://x点从哪里开始扫描SetProperty(item,0);休息;case6150://y-point从哪里开始扫描SetProperty(item,0);休息;case6151://水平扩展SetProperty(item,(int)(8.5*100));休息;case6152://垂直范围SetProperty(item,11*100);休息;}}ImageFile图像=(ImageFile)_scanner.Items[1].Transfer(FormatID.wiaFormatPNG);System.IO.File.Delete("tmp.png");image.SaveFile("tmp.png");}privatevoidSetProperty(Propertyproperty,intvalue){IPropertyx=(IProperty)property;对象val=值;x.set_Value(refval);}publicvoidtest(){boolWantsToScan=true;while(WantsToScan)ScanAndSaveOnePage();}staticvoidMain(string[]args){newScan().test();}}本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如有转载请注明出处: