AnalysisHintNode 類別
為 InkAnalyzer 提供區域的分析提示。
命名空間: Microsoft.Ink
組件: Microsoft.Ink.Analysis (在 Microsoft.Ink.Analysis.dll 中)
語法
'宣告
Public NotInheritable Class AnalysisHintNode _
Inherits ContextNode
'用途
Dim instance As AnalysisHintNode
public sealed class AnalysisHintNode : ContextNode
public ref class AnalysisHintNode sealed : public ContextNode
public final class AnalysisHintNode extends ContextNode
public final class AnalysisHintNode extends ContextNode
備註
AnalysisHintNode 會為其所附加至的 InkAnalyzer 提供特定區域的相關提示 (即提示的 Location)。提示則會為筆墨分析器提供額外的內容,以提高辨識精確度。InkAnalyzer 分析提示區域內的筆墨時,會套用這個內容資訊。
如果將提示指派至無限區域 (稱為全域提示),則 InkAnalyzer 會將提示的內容套用至所有不在其他提示區域內的筆墨。單一 InkAnalyzer 中可以附加多個提示,但是單一 InkAnalyzer 中只可以附加一個全域提示,而且非全域提示不能重疊。如需提示可提供之各種內容資訊的詳細資訊,請參閱這個類別的成員。
若要將提示加入至 InkAnalyzer,請使用 InkAnalyzer.CreateAnalysisHint。若要從 InkAnalyzer 移除提示,請使用 DeleteAnalysisHint。
注意事項: |
---|
在 InkAnalyzer 中加入提示並不會變更 InkAnalyzer 物件的 DirtyRegion。若要讓 InkAnalyzer 重新分析提示區域內的筆墨,請使用 DirtyRegion 物件的 Union(AnalysisRegion) 方法。 |
每次呼叫 Analyze 或 BackgroundAnalyze 方法時,InkAnalyzer 會更新提示的 Links 屬性。InkAnalyzer 會在 AnalysisHintNode 和每個要套用提示的 ContextNode 之間加入 ContextLink。如果提示套用於 ContextNode 的所有子代 (Descendant),則 InkAnalyzer 只會將提示連結至該 ContextNode,而不會連結至其任何子代。
AnalysisHintNode 的 Location 屬性無法用來將提示套用至自訂辨識器節點。如果建立提示並設定其位置來加入 CustomRecognizerNode 中的筆劃,就無法將提示套用至那些筆劃。若要正確地將提示套用至自訂辨識器節點內的筆劃,請在呼叫 Analyze 之前先建立 AnalysisHintNode 和 CustomRecognizerNode 之間的連結。舉例來說,假設有一個稱為 theAnalysisHint 的 AnalysisHintNode 和一個稱為 theCustomRecognizerNode 的 CustomRecognizerNode。為了建立這兩者之間的連結,請使用 theAnalysisHint.Links.Add(theCustomRecognizerNode, ContextLinkDirection.LinksWith)。
只有一個非全域提示可以套用至 CustomRecognizerNode。為了從 CustomRecognizerNode 移除非全域提示,請使用 Remove 從 CustomRecognizerNode 的 Links 屬性移除連結。
如果已將非空白區域的非全域提示套用至 CustomRecognizerNode,則 InkAnalyzer 會將提示的內容同時套用至 CustomRecognizerNode 和提示區域內的筆墨。
分析器不會建立或刪除 AnalysisHintNode 和 CustomRecognizerNode 之間的連結。
為表單應用程式使用提示時,應用程式應該避免混用文字內容和表單中的筆墨。也就是說,例如不應該在分析樹狀結構中建立文字欄位名稱。提示會使筆墨和頁面上的區域產生關聯,因此任何文字內容都會妨礙這個筆墨與提示之間的關聯。分析作業可能會將同一個書寫區域內的筆墨和文字內容合併起來,而使筆墨無法和提示區域產生關聯。
範例
這個範例會為 InkAnalyzer (變數名稱為 theInkAnalyzerWithHint) 建立 AnalysisHintNode (變數名稱為 theAnalysisHint),並且將 theAnalysisHint 的區域變成無限區域,讓此提示變成全域提示,然後在提示上設定 AllowPartialDictionaryTerms 和 Name 屬性。
' Add a new, global analysis hint to theInkAnalyzerWithHint.
Dim theAnalysisHint As Microsoft.Ink.AnalysisHintNode = _
Me.theInkAnalyzerWithHint.CreateAnalysisHint()
theAnalysisHint.Location.MakeInfinite()
theAnalysisHint.AllowPartialDictionaryTerms = True
theAnalysisHint.Name = "Allow Partial Dictionary Terms"
// Add a new, global analysis hint to theInkAnalyzerWithHint.
Microsoft.Ink.AnalysisHintNode theAnalysisHint =
this.theInkAnalyzerWithHint.CreateAnalysisHint();
theAnalysisHint.Location.MakeInfinite();
theAnalysisHint.AllowPartialDictionaryTerms = true;
theAnalysisHint.Name = "Allow Partial Dictionary Terms";
繼承階層架構
System.Object
Microsoft.Ink.ContextNode
Microsoft.Ink.AnalysisHintNode
執行緒安全
這個型別的任何 Public static (在 Visual Basic 中為 Shared) 成員都具備執行緒安全。並非所有的執行個體成員都是安全執行緒。
平台
Windows Vista
.NET Framework 和 .NET Compact Framework 並不支援各種平台的所有版本。如需支援平台版本的相關資訊,請參閱 .NET Framework 系統需求。
版本資訊
.NET Framework
支援版本:3.0