卖逼视频免费看片|狼人就干网中文字慕|成人av影院导航|人妻少妇精品无码专区二区妖婧|亚洲丝袜视频玖玖|一区二区免费中文|日本高清无码一区|国产91无码小说|国产黄片子视频91sese日韩|免费高清无码成人网站入口

Delphi中直接操縱掃描儀的方法

在Delphi中,我們可以通過多種方法來獲取所需的掃描儀圖像信息。具體而言,有三種基本的方法可供選擇。方法一:使用圖像處理軟件首先,我們可以使用圖像處理軟件(如Photoshop等)的掃描圖像功能,將

在Delphi中,我們可以通過多種方法來獲取所需的掃描儀圖像信息。具體而言,有三種基本的方法可供選擇。

方法一:使用圖像處理軟件

首先,我們可以使用圖像處理軟件(如Photoshop等)的掃描圖像功能,將其加工成所需格式的圖像,然后在自己的系統(tǒng)中使用。這種方法減少了編程的復雜性,但系統(tǒng)集成度較低,用戶使用不方便。

方法二:使用Twain.DLL接口

第二種方法是通過Twain.DLL接口來控制掃描儀。該接口是在安裝掃描儀時提供的,實際上是一個插件,通過一系列函數來控制掃描儀。這種方法在編程上提供了最大的靈活性和可控性。

方法三:使用構件技術

第三種方法是利用Delphi的可視化構件技術來控制掃描儀。這種方法安全、靈活且自由度較高,同時也是建立在Twain.DLL接口之上的。在Windows 9X中,附件中提供了四個OCX構件(imgEdit、imgAnntool、imgScan、imgAdmin),通過使用這些構件,我們可以完全控制掃描儀。

如何使用OCX構件

首先,在Windows 9X中安裝"映象"可選項。在控制面板中選擇"添加/刪除程序",再選擇"安裝Windows",點擊"附件"復選框,然后可以找到"映象"選項。啟動Delphi,選擇"Component"菜單項下的"Import ActiveX Control",可以看到列表中有"Wang圖象編輯控制"、"Wang圖象掃描控制"、"Wang圖象管理控制"、"Wang圖象縮略圖控制"四個構件。選中這四個構件,然后點擊"Install"按鈕,這樣在構件面板上的ActiveX舌標下就可以看到這四個構件的圖標。

ImgScan構件的屬性和方法

ImgScan構件有幾個重要的屬性,包括FileType(圖像文件類型)、ScanTo(被掃描圖像的目的)、DestImageControl(Wang ImgEdit構件名)和Zoom(圖像的放縮比例)。此外,ImgScan構件還有一些主要的方法,如OpenScanner(打開掃描儀)、CloseScanner(關閉掃描儀)、StartScan(開始掃描)和StopScan(停止掃描)等。

ImgEdit構件的屬性和方法

ImgEdit構件的屬性主要用于控制掃描圖像的分辨率、寬高以及是否允許對圖像進行局部選擇等。它還提供了一些方法,如拷貝、剪切圖像到粘貼板,從粘貼板復制圖像,旋轉、放縮、鏡像圖像,打印、保存、刷新圖像等功能。

使用示例

以下是使用ImgScan和ImgEdit構件的一些示例代碼:

```delphi

procedure Tscanf.N1Click(Sender: TObject);

begin

; //選擇系統(tǒng)中已安裝的掃描儀

end;

procedure Tscanf.N2Click(Sender: TObject);

begin

imgedit1.zoom : 100; //設置圖像的放縮因子

if not then //如果選擇的掃描儀不可用

; //打開掃描儀

; //開始掃描圖像

; //關閉掃描儀

end;

procedure Tscanf.N8Click(Sender: TObject);

begin

if ( and ) then

(selleft, seltop); //從剪貼板粘貼圖像,參數為Imgedit的顯示區(qū)域的起始坐標

end;

procedure Tscanf.N1801Click(Sender: TObject);

begin

if then

imgedit1.Flip; //鏡像圖像

end;

procedure Tscanf.N901Click(Sender: TObject);

begin

if then

; //向右旋轉圖像

end;

procedure Tscanf.N6Click(Sender: TObject);

begin

imgedit1.DrawSelectionRect(selleft, seltop, selwidth, selheight); //進行圖像局部選擇

(selleft, seltop, selwidth, selheight); //剪切所選區(qū)域

end;

```

需要注意的是,在使用Imgedit構件的拷貝和剪切功能時,可能會遇到以下問題:

1. 如果選擇了整幅圖像,沒有任何問題。

2. 如果選擇了局部區(qū)域,則拷貝和剪切的區(qū)域可能會發(fā)生漂移。

3. 如果使用DELPHI作為MS SQL后端數據庫的客戶端界面,并將圖像內容寫入數據庫的圖像字段時,可能會遇到BDE(數據庫引擎)報錯。這是DELPHI 3.0和4.0的一個BUG,但可以通過4.0的升級包解決。

對于第二個問題,可以在Imgedit的onSelectionRectDrawn事件中編寫代碼,將選擇區(qū)域的邊界值保存到全局變量中,在拷貝和剪切之前重新選擇即可。

標簽: