IInkAnalyzer::GetRecognizedString 方法
擷取 IInkAnalyzer中整個內容節點樹狀結構之辨識作業的最佳結果字串。
語法
HRESULT GetRecognizedString(
[out] BSTR *pbstrRecognizedString
);
參數
-
pbstrRecognizedString [out]
-
IInkAnalyzer中整個內容節點樹狀結構之辨識作業的最佳結果字串。
傳回值
如需傳回值的描述,請參閱 類別和介面 - 筆跡分析。
備註
警告
若要避免記憶體流失,當您不再需要使用字串時,請針對pbstrRecognizedString呼叫SysFreeString。
這個方法會傳回與已辨識字串根節點之屬性資料相同的值。 (請參閱 IInkAnalyzer::GetRootNode 方法、 ICoNtextNode::GetPropertyData和 CoNtext Node Properties.)
範例
下列範例顯示一個方法,會逐步執行筆跡分析器的 ICoNtextNode 結果樹狀結構。 如果 IInkAnlyzer 目前未執行筆跡分析,此方法會執行下列動作。
- 取得頂端辨識字串。
- 取得筆跡分析器的根節點。
- 呼叫協助程式方法
ExploreContextNode
,以檢查根節點及其子節點。
// Helper method that explores the current analysis results of an ink analyzer.
HRESULT CMyClass::ExploreAnalysisResults(
IInkAnalyzer *pInkAnalyzer)
{
// Check that the ink analyzer is not currently analyzing ink.
VARIANT_BOOL bIsAnalyzing;
HRESULT hr = pInkAnalyzer->IsAnalyzing(&bIsAnalyzing);
if (SUCCEEDED(hr))
{
if (bIsAnalyzing)
{
return E_PENDING;
}
// Get the ink analyzer's best-result string.
BSTR recognizedString = NULL;
hr = pInkAnalyzer->GetRecognizedString(&recognizedString);
if (SUCCEEDED(hr))
{
// Insert code that records the ink analyzer's best-result string here.
// Get the ink analyzer's root node.
IContextNode *pRootNode = NULL;
hr = pInkAnalyzer->GetRootNode(&pRootNode);
if (SUCCEEDED(hr))
{
// Call a helper method that recursively explores context
// nodes and their subnodes.
hr = this->ExploreContextNode(pRootNode);
}
// Release this reference to the root node.
if (pRootNode != NULL)
{
pRootNode->Release();
pRootNode = NULL;
}
}
// Free the system resources for the recognized string.
SysFreeString(recognizedString);
}
return hr;
}
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 |
Windows XP Tablet PC Edition [僅限傳統型應用程式] |
最低支援的伺服器 |
都不支援 |
標頭 |
|
DLL |
|