IWiaImageFilter 介面
IWiaImageFilter介面是由影像處理篩選開發人員所實作的擴充介面,由 Windows 映像取得 (WIA) 2.0 呼叫。
成員
IWiaImageFilter介面繼承自IUnknown介面。 IWiaImageFilter 也有下列類型的成員:
方法
IWiaImageFilter介面具有這些方法。
方法 | Description |
---|---|
ApplyProperties | 讓影像處理篩選準則將屬性寫回驅動程式 (和裝置) 。 |
FilterPreviewImage | 篩選預覽影像。 |
InitializeFilter | 初始化篩選。 在每次下載映射之前,由 WIA 2.0 呼叫。 |
SetNewCallback | 設定用於轉送呼叫之影像處理篩選的新應用程式回呼。 |
備註
影像處理篩選開發人員應該實作此介面和 IWiaTransferCallback 介面。
WIA 2.0 會呼叫篩選方法。 它們永遠不會直接從應用程式呼叫。
Microsoft 提供 WIA 2.0 預覽元件,它會快取從掃描器取得的原始未篩選預覽影像。 應用程式會使用 CoCreateInstance 共同建立 WIA 2.0 預覽元件 (CLSID_WiaPreview) 的實例,它會使用 IWiaItem2::GetExtension載入篩選。 應用程式呼叫 IWiaTransfer::D ownload時,會自動呼叫篩選。
掃描影像時,一律會執行影像處理篩選。 應用程式無法從掃描器取得影像,而不需要先套用映射篩選器。
篩選準則至少必須實作亮度和對比。 提供亮度和對比控制項給使用者的常見 UI,可以向使用者顯示精確的預覽。
影像處理篩選絕對不應該修改WiaTransferParams結構的lMessage成員。
若要讀取必要的屬性,影像處理篩選準則應該呼叫 IWiaPropertyStorage::GetPropertyStream 在 IWiaPropertyStorage 介面上呼叫它從專案取得的屬性,方法是呼叫 IWiaImageFilter::QueryInterface。 然後,篩選可以在此資料流程上具現化 IPropertyStorage 實例,以讀取專案屬性。 影像處理篩選器不應該直接呼叫 IWiaPropertyStorage::ReadMultiple ,因為此方法會呼叫驅動程式的 drvReadItemProperties
,但 WIA 2.0 服務已在呼叫中 drvAcquireItemData
鎖定驅動程式,因此此呼叫將會逾時且失敗。
篩選準則感興趣的屬性可能是亮度和對比設定。 篩選通常也需要從pWiaItem2讀取影像格式以及預覽屬性WIA_DPS_PREVIEW。 這些屬性全都用於篩選程式。
WIA 2.0 元件一律會將未篩選的資料寫入影像處理篩選。 篩選資料流程所實作的影像處理演算法可以多次篩選資料,而且不需要擔心產生與篩選資料一次相同的結果。
篩選準則必須注意 WIA_DPS_PREVIEW 屬性,特別是在硬體中處理某些篩選相關工作時。 例如,特定驅動程式可以根據應用程式如何將亮度設定為 WIA 2.0 專案,變更掃描器硬體中的燈光亮度。 在最終掃描 (期間,應用程式呼叫 IWiaTransfer::D ownload) 驅動程式通常會修改掃描器的實體燈。 在此情況下,影像處理篩選器可能完全不需要執行任何亮度處理。 不過,在預覽掃描期間,驅動程式不應該修改燈光的亮度,而是應該只處理在影像處理篩選器中。 WIA 2.0 預覽元件和影像處理篩選器必須根據設定至專案的屬性傳回精確的影像。
影像處理篩選準則必須支援驅動程式支援的所有影像格式。
影像處理篩選一律會提供對應至選取區域設定為要取得影像之專案的影像。 不過請注意,如果驅動程式支援 WIA_IPS_ROTATION 屬性,映射可能已經旋轉。
映射處理篩選是透過 IWiaItem2::GetExtension建立,通常是由應用程式建立,通常是由應用程式呼叫 IWiaPreview::GetNewPreview::GetNewPreview 或 IWiaTransfer::D ownload時由 WIA 2.0 元件建立。
IWiaImageFilter介面,就像所有元件物件模型 (COM) 介面一樣,會繼承IUnknown介面方法。
IUnknown 方法 | Description |
---|---|
IUnknown::QueryInterface | 傳回受支援介面的指標。 |
IUnknown::AddRef | 遞增參考次數。 |
IUnknown::Release | 遞減參考次數。 |
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 |
Windows Vista [僅限傳統型應用程式] |
最低支援的伺服器 |
Windows Server 2008 [僅限傳統型應用程式] |
標頭 |
|
Idl |
|