MIS中的圖像應用技術[DEVELOPER2000]
2024-07-21 02:39:29
供稿:網友
[摘要]
本文介紹了Oracle DEVELOPER/2000開發工具在MIS圖像處理上的應用 技術,并具體提供了具體實現方法和過程。
[要害詞]
MIS ORACLE工具 圖像 JPEG
一、問題的提出
計算機技術的不斷更新和發展,促使MIS應用從基于單一的文本信息發展為支持多媒體信息,其中圖像應用是最常用的一種方式。目前在人事檔案治理、檔案治理、病案治理等應用中已廣泛應用圖像處理技術,然而在實際應用中由于圖像信息量大,許多開發工具僅支持BMP、PCX等幾種壓縮比小的圖像格式,導致在大型應用(幾萬條或幾十萬條記錄)中處理困難,因此如何存貯和治理圖像信息成為這類應用系統的要害,ORACLE公司提供的ORACLE數據庫及DEVELOPER/2000開發工具有效地解決了上述問題。
二、ORACLE圖像處理技術特點
ORACLE數據庫系統是目前非常流行的大型分布式關系型數據庫治理系統,針對多媒體信息提供了二進制長類型(LONG RAW)數據類型,它最大可存貯2GB信息,為大型圖像應用系統提供了有效的存貯手段;ORACLE DEVELOPER/2000是ORACLE公司的基于GUI的第二代CLIENT/SERVER開發工具,具有強大的應用開發功能(尤其是它提供的TIGGER機制可以稱為目前各種開發工具中事件驅動機制的先驅)和較強的可移植性、可伸縮性,只需少量編程即可快速地開發出復雜的多媒體應用系統,在圖像處理方面支持多種圖像格式,包括BMP、PCX、GIF、JPEG、PCD、RAS、TIFF 等,其中JPEG提供了較高的壓縮比,以一幅1寸彩色照片為例,按24位真彩方式掃描,以BMP格式存放需74KB,以TIF和GIF格式需36KB,而以ORACLE提供的JPEG格式僅需2.5KB,通過這些技術足以實現大型圖像應用系統。
三、ORACLE圖像處理的實現方法
在圖像處理方面,DEVELOPER/2000中的FORMS應用可采用兩類方式:
1. 圖文圖像方式
這種方式與許多開發工具一樣,在畫布(CONVAS)編輯器中,將圖像直接從文件系統或數據庫中導入,主要用來顯示企業標志、制作屏幕背景等,在生成應用時圖像同時被存入應用程序文件中。
具體步驟如下:
在畫布編輯器屏幕,從菜單欄點按編輯→導入→圖像,出現對話框后,指定待處理的圖像,確定后即將圖像調入當前的畫布中,然后可對其進行任意拖放,也可在其上添加數據項或按鈕等。
2. 圖像項方式
這種方式與ORACLE其它數據類型的數據項(如文本項)使用方式一樣,它以圖像項形式表達,應用程序中僅保存其定義,實際運行時動態顯示,這種方式是圖像應用系統中最需要的。下面以一圖文人事檔案治理為例,具體描述動態圖像(即員工照片)的二種不同的處理方法。
⑴基于ORACLE RDBMS的處理方法
首先在建立員工檔案基表時,除包含姓名、性別、工作證號、單位、部門等文本信息字段外,還需建立照片字段,此字段必須為LONG RAW類型;然后定義圖像項,一是在建立FORM的新塊時選中照片字段直接定義,另一方法是在已有塊中增加新項或在畫布編輯中增加圖像項,此時應注重該項必須與數據庫中的字段名對應;最后在屬性窗口中設置圖像項的大小風格(Size Style),對于固定大小的照片可設置為Crop即按實際大小顯示方式,而對于不知圖像大小的可設置為Adjust即按比例縮放圖像以便能夠完整地顯示圖像。
至此設計完畢,運行時系統自動將定義的圖像項與數據庫中的照片字段相對應,查詢記錄時就將相應記錄中的照片信息調入顯示,若進行修改或替換操作,系統提交時自動修改數據庫中的相應圖像信息。
基于ORACLE數據庫的方法開發簡單,幾乎不需額外的編程,非凡是對圖像的修改、替換處理比其它開發工具更加方便,比較適用于大型應用系統;但這種方法只能基于ORACLE數據庫才能實現,對異種數據庫不適用,同時應注重在數據庫選擇詞句SELECT中不能使用"*",即不能使用SELECT * FROM …這樣的語句。
⑵基于文件系統操作
這種方式員工檔案庫中不含照片字段,但需建立文件目錄結構,用于存放圖像文件,如建立類型下面的目錄結構:
C:/ ── IMG ┬── 單位代碼 ┬── 部門代碼 ┬─工作證號1.JPG
│ │ │ …….
│ │ │
│ │ └─工作證號n.JPG
在FORMS的畫布編輯器中或新項的屬性窗口定義圖像項,需注重的是此項不能與數據庫聯系,然后建立觸發器(Trigger),以查詢功能為例,需在FORMS中定義塊級Trigger,類型定義為"Post_Query" ,其PL/SQL內容為:
declare
zp varchar2(100); -- 定義局部變量,存放照片文件名
Begin
--block.dw為單位代碼,block.bm為部門代碼,block.gzzh為工作證號
--拼接員工的照片文件名,注重block前的':'不能少
zp:='C:/IMG':block.dw'/':block.bm'/':block.gzzh'.JPG';
-- 將照片文件調入并以JPEG格式在圖像項IMG中顯示
read_image_file(zp,'JFIF','block.img');
End;
這樣,系統運行時即可在顯示文本信息的同時顯示員工對應的照片。
這種方式可基于多種數據庫系統,缺點是需要編寫較多的代碼,而且文件結構復雜,不便治理,易造成磁盤碎塊影響系統性能等,因此比較適用于單機、小型應用系統。
三、結束語
通過上面的介紹,可使我們的應用系統的內涵更加豐富,同時也為選擇開發工具時提供技術參考,現在流行的各種開發工具如PB、VB、Delphi、DEVELOPER/2000等就其整體功能很難說誰優誰劣,一般均能滿足應用開發的需要,但針對具體問題時可能會有差別,如目前直接支持高壓縮比圖像應用的工具就不多,這就需要在選擇工具時根據具體應用來仔細考慮。當然,隨著時間的推移、軟件版本的不斷更新,支持多媒體的工具會越來越完善,使應用系統更加完美。