IInkAnalyzer::Analyze 方法
執行同步筆跡分析。
語法
HRESULT Analyze(
[out] IAnalysisStatus **ppStatus
);
參數
-
ppStatus [out]
-
描述分析作業狀態的 IAnalysisStatus 指標。
傳回值
如需傳回值的描述,請參閱 類別和介面 - 筆跡分析。
備註
警告
若要避免記憶體流失,當您不再需要流量分析狀態時,請在ppStatus上呼叫IUnknown::Release。
此方法會啟動同步筆跡分析作業。 筆跡分析包括版面配置分析、書寫和繪圖分類,以及手寫辨識。 此方法會在分析作業完成之後傳回。
如果ppStatus為Null,這個方法會傳回E_POINTER。
在呼叫 IInkAnalyzer::Analyze 方法 或 IInkAnalyzer::BackgroundAnalyze 方法期間, IInkAnalyzer 會分析其中途區域的筆跡, (請參閱 IInkAnalyzer::GetDirtyRegion 方法) 。 不過, IInkAnalyzer 可能會擴充分析作業,以包含鄰近區域。
這個方法會將 IInkAnalyzer 物件的中途區域設定為空白區域。 如果另一個執行緒已新增尚未分析的筆劃資料, IInkAnalyzer 會在分析的協調階段期間,將未分析筆劃的周框方塊新增至其中途區域。
如果您的應用程式未處理 _IAnalysisEvents::UpdateStrokesCache 事件,這個方法會傳回錯誤。
IInkAnalyzer不會引發_IAnalysisEvents::Results和_IAnalysisEvents::IntermediateResults事件,以回應此方法。
若要修改筆跡分析的執行方式,請使用 IInkAnalyzer::SetAnalysisModes 方法。
如需筆跡分析的詳細資訊,請參閱 筆跡分析概觀。
範例
下列範例會執行前景筆跡分析。
// Perform synchronous ink analysis.
IAnalysisStatus *pAnalysisStatus = NULL;
hr = this->m_spIInkAnalyzer->Analyze(&pAnalysisStatus);
if (SUCCEEDED(hr))
{
// Insert code that processes the analysis results.
}
// Release this reference to the analysis status.
if (pAnalysisStatus != NULL)
{
pAnalysisStatus->Release();
pAnalysisStatus = NULL;
}
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 |
Windows XP Tablet PC Edition [僅限傳統型應用程式] |
最低支援的伺服器 |
都不支援 |
標頭 |
|
DLL |
|