kodak控件(IMGSCAN.OCX)介绍整理
公司最近做扫描仪的集成,用到WIA和Twain,Twain的原生态开发相对控件来说较为复杂,看到网上有IMGSCAN.OCX控件,关于控件的介绍不是很清楚,整理一下,以备后用。
1. 图像扫描控件的属性
-
DestImageControl属性
字符型。该属性连接图像扫描控件到一个图像编辑控件,允许在扫描完毕后查看图像。
-
FileType属性
数值型。返回或设置图像扫描后建立的图像类型,属性值如表所示。
表1
filetype属性值 属性值 说明 1 kodak image document (tiff) tiff文件 2 fax viewer document (awd) awd文件,适用于windows98,xp下会引发ole错误 3 bitmap image (bmp) bmp位图文件 -
image属性
字符型。返回或设置要扫描图像的名称。例如,你指定了属性值为“c:\temp\img”,扫描图像后会自动在“c:\temp”目录下建立类似img00001.xxx、img00002.xxx命名方式的文件,其中“xxx”为图像格式后缀“tif”或“bmp”等。
-
MultiPage属性
逻辑型。返回或设置是否一个或多个图像页被扫描进一个图像文件中。缺省值为.f.,扫描单个图像页到一个图像文件中;为.t.时可以将多个图像页放置到一个图像文件中。该属性需要结合page、pagecount和pageoption属性一起使用。 -
page属性
数值型。返回或设置一个扫描会话的起始页。
通过该属性设置当前图像的页号。如果要追加到一个文件中,需要将页号设置为0,同时,pageoption属性应当设置为2(在现有文件中附加页);如果要插入一个或多个页,需要将页号设置在要插入页的前面。 -
PageCount属性
数值型。返回或设置每个图像文件的页数目。
-
pageoption属性
数值型。返回或设置扫描完毕后页的添加方式。属性值如表所示。表2
pageoption属性值 属性值 说明 0 create new file 创建新文件 1 prompt to create new file 提示创建新文件 2 append pages 在现有文件中追加页 3 insert pages 在现有文件中插入页 4 overwrite pages 覆盖现有文件中的页 5 prompt to overwrite pages 提示覆盖现有文件中的页 6 overwrite all pages 覆盖所有页(覆盖文件) -
ScanTo属性
数值型。返回或设置图像扫描的结果。属性值如表所示。
表3
scanto属性值 属性值 说明 0 display only 只显示 1 display and file 显示并归档 2 file only 只归档 3 display and use file template 显示并使用文件模板 4 use file template only 只使用文件模板 5 fax only 只传真 如果设置属性值为1、2或5,需要一个文件名称;如果属性值为3或4,需要一个文件模板,该模板通过image属性设置。
-
scroll属性
逻辑型。设置扫描完成后滚动显示图像。该属性在scanto属性的0、1、3模式下有效。 -
ShowSetupBeforeScan属性
逻辑型。该属性用来设置在开始扫描前是否显示扫描仪的用户设置窗口。 -
StatusCode 属性
数值型。用来返回最近的错误状态码,0表示没有错误。 -
StopsCanBox属性
逻辑型。该属性用来设置在停止一个扫描会话时是否显示一个对话框窗口。缺省值为.f.,不显示。 -
zoom属性
数值型。返回或设置扫描页的显示比例。
2.kodak图像扫描控件的方法
-
ClosesCanner方法
该方法通过卸载驱动程序来关闭一个扫描仪。 当一个扫描仪或应用程序发生错误时,再次访问前关闭扫描仪以避免可能存在的问题。 -
GetCompressionPreference方法
返回通过ShowScanPreference方法或SetPageTypeCompressionOpts方法设置的扫描压缩首选项。返回值如表所示。表4
图像压缩选项设置值 说明 0 (缺省)最佳显示质量 1 显示质量好且文件尽可能小 2 最小的文件大小 3 自定义设置 -
GetPageTypeCompressionInfo方法
该方法通过指定图像类型来返回压缩信息。如:nCompression=ThisForm.OleScan1.GetPageTypeCompressionInfo(ImageType)
其中OleScan1为kodak图像扫描控件,ImageType为图像类型参数,可用的图像类型见下表;表5
图像类型参数设置值 说明 1 黑白 2 16级灰度 3 256级灰度 4 256色 5 24位真彩色 6 16色 nCompression为返回的压缩信息值,可能的返回值如下表所示。
GetPageTypeCompressionInfo方法返回的压缩信息
表6
返回值 说明 0 无压缩信息 4096 组3(1d)已修改的霍夫曼编码 0 组3(1d)已修改的反转位顺序霍夫曼编码 6400 组3(1d)传真 2304 组3(1d)反转位顺序传真 4608 组4(2d)传真 512 组4(2d)反转位顺序传真 0 tiff packbits (无压缩信息) 0 lzw (无压缩信息) 11610 jpeg 低分辨率,低压缩 7740 jpeg 低分辨率,中等压缩 3870 jpeg 低分辨率,高压缩 27994 jpeg 中等分辨率,低压缩 24124 jpeg 中等分辨率,中等压缩 20254 jpeg 中等分辨率,高压缩 -21158 jpeg 高分辨率,低压缩 -25028 jpeg高分辨率,中等压缩 -28898 jpeg高分辨率,高压缩 -
GetPageTypeCompressionType方法
该方法通过指定图像类型来返回压缩类型。如:nCompression=ThisForm.OleScan1.GetPageTypeCompressionType(imageType)
其中的imageType为图像类型参数,可用的图像类型请参考下表。GetPageTypeCompressionType方法返回的压缩信息
表7
返回值 说明 0 无压缩 1 ccitt 组3(1d) 2 ccitt 组4(2d) 4 tiff packbits 8 jpeg 21 lzw nCompression为返回的压缩信息值,可能的返回值如表7所示。
-
OpenScanner方法
通过加载驱动程序打开扫描仪。
-
ResetScanner方法
重置扫描仪的硬件和软件。
-
Scanneravailable方法
检查twain-兼容扫描仪是否可用。如果返回值为.t.,表示可用。
-
SetPageTypeCompressionOpts方法
设置所有基于图像类型的压缩信息,该方法可以接收4个参数:compPref、imageType、compType和compInfo。如:
ThisForm.Olescan1. SetPageTypeCompressionOpts(compPref,imageType,compType, compInfo)
compPref可用的参数值参考表4 ;imageType可用的参数值参考表5;compType可用的参数值参考表表6;compInfo可用的参数值参考表表7。 -
ShowScanNew方法
该方法用来显示扫描新图对话框,来改变选项进行扫描。该方法可以接收一个逻辑型参数,如:
ThisForm.Olescan1. ShowScanNew(.t.) .t.表示显示一个模式对话框,.f.表示显示非模式对话框。
-
ShowScanPage方法
该方法用来显示扫描页面对话框,来改变选项进行扫描。该方法可以接收一个逻辑型参数,如:
ThisForm.OleControl1.ShowScanPage(.t.) .t.表示显示一个模式对话框,.f.表示显示非模式对话框。 -
ShowScanPreferences方法
该方法用来显示扫描压缩选项对话框。
-
ShowSelectScanner方法
该方法用来显示一个选择扫描仪对话框。
-
StartScan方法
开始扫描。如果扫描仪是关闭的,该方法将打开扫描仪并在扫描完毕后重新关闭。
-
StopScan方法
停止扫描。
3. kodak图像扫描控件的事件
-
PageDone事件
该事件在一个页扫描完毕后触发。该事件可以接收到一个PageNumber值,该值为刚扫描的页的页号。
-
Scandone事件
该事件在扫描操作完成后触发。
-
ScanStarted事件
该事件在第一个图像页传送到控件前发生。
-
Scanuidone事件
用户接口卸载后触发。
浙公网安备 33010602011771号