Win32 API 日本語リファレンス
ホームUI.TabletPC › InkRecognitionModes

InkRecognitionModes

列挙型
基底型i4

メンバー 9

名前10進16進説明
IRM_None00x0レコグナイザーは認識モードを適用しません。
IRM_WordModeOnly10x1

レコグナイザーはインクを 1 つの単語として扱います。

例えば、レコグナイザー コンテキストに to get her が含まれている場合、レコグナイザーは together を返します。

注意 ラテン文字のレコグナイザーでは、辞書内の一部の複合語が単一の単語として扱われます。例えば、WordMode フラグを使用すると、ラテン文字のレコグナイザーは "Los Angeles" を 1 つの単語として扱います。さらに、英語 (英国)、英語 (米国)、ドイツ語、フランス語の Date Factoid など、特定の factoid では複数の単語から成る日付が単一の単語として扱われます。例えば、WordMode フラグを使用すると、これらのレコグナイザーは "January 21, 2000" を 1 つの単語として扱います。
IRM_Coerce20x2

レコグナイザーは、コンテキストに指定した factoid に基づいて結果を強制的に一致させます。

例えば、Telephone factoid を指定し、ユーザーが hello という単語を入力した場合、レコグナイザーはランダムな電話番号または空の文字列を返すことがあります。このフラグを指定しない場合、レコグナイザーは結果として hello を返します。

IRM_TopInkBreaksOnly40x4

レコグナイザーは複数セグメント化を無効にします。

これにより、インクの複数の認識セグメント (ラテン文字のレコグナイザーでは単語、東アジア文字のレコグナイザーでは文字に対応します) に基づいて認識結果を返すレコグナイザーの機能が無効になります。

言い換えると、together という単語は常に together が 1 つの単語であることに基づく候補を返し、レコグナイザーはその文字列が "to get her" やセグメント化の異なる他のバリエーションである可能性を考慮しません。

このフラグを有効にすると、認識速度が向上します。

IRM_PrefixOk80x8レコグナイザーは部分的な単語認識を適用します。
IRM_LineMode160x10レコグナイザーは内部で改行を想定せず、すべてのインクが 1 行として認識されます。
IRM_DisablePersonalization320x20レコグナイザーのパーソナライズを無効にします。
IRM_AutoSpace640x40

レコグナイザーは、新しく書き込まれた (そして認識された) テキストと、その接尾辞および接頭辞との間の単語の区切りを自動的に判断します。

例えば、AutoSpace が有効な場合、認識済みの単語 good の後にユーザーが bye を挿入すると、複合語 "goodbye" が有効な単語であるため、レコグナイザーは認識されたテキストとして、前に空白を挿入せずに bye を返します。

認識済みの単語 hello の後にユーザーが world を挿入した場合、レコグナイザーは hello world という単語になるように、認識されたテキストとして、前に空白を挿入した world を返します。AutoSpace が無効な場合、レコグナイザーは空白なしで world を返します。

このフラグはラテン文字のレコグナイザーでのみ使用されます。

IRM_Max1280x80内部使用のみです。

公式ドキュメント

レコグナイザーがインクをどのように解釈し、結果文字列を決定するかを指定します。

解説(Remarks)

C++ では、ビット単位の OR 演算子を使用して一度に複数のフラグを設定しようとする場合、明示的なキャストが必要です。明示的なキャストを使用しないとコンパイル エラーが発生します。

出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)

各言語での定義

列挙メンバーの定義。HSP タブは #define global(値は16進)。

typedef enum InkRecognitionModes : int {
    IRM_None = 0,
    IRM_WordModeOnly = 1,
    IRM_Coerce = 2,
    IRM_TopInkBreaksOnly = 4,
    IRM_PrefixOk = 8,
    IRM_LineMode = 16,
    IRM_DisablePersonalization = 32,
    IRM_AutoSpace = 64,
    IRM_Max = 128
} InkRecognitionModes;
public enum InkRecognitionModes : int
{
    IRM_None = 0,
    IRM_WordModeOnly = 1,
    IRM_Coerce = 2,
    IRM_TopInkBreaksOnly = 4,
    IRM_PrefixOk = 8,
    IRM_LineMode = 16,
    IRM_DisablePersonalization = 32,
    IRM_AutoSpace = 64,
    IRM_Max = 128,
}
Public Enum InkRecognitionModes As Integer
    IRM_None = 0
    IRM_WordModeOnly = 1
    IRM_Coerce = 2
    IRM_TopInkBreaksOnly = 4
    IRM_PrefixOk = 8
    IRM_LineMode = 16
    IRM_DisablePersonalization = 32
    IRM_AutoSpace = 64
    IRM_Max = 128
End Enum
import enum

class InkRecognitionModes(enum.IntEnum):
    IRM_None = 0
    IRM_WordModeOnly = 1
    IRM_Coerce = 2
    IRM_TopInkBreaksOnly = 4
    IRM_PrefixOk = 8
    IRM_LineMode = 16
    IRM_DisablePersonalization = 32
    IRM_AutoSpace = 64
    IRM_Max = 128
// InkRecognitionModes
pub const IRM_None: i32 = 0;
pub const IRM_WordModeOnly: i32 = 1;
pub const IRM_Coerce: i32 = 2;
pub const IRM_TopInkBreaksOnly: i32 = 4;
pub const IRM_PrefixOk: i32 = 8;
pub const IRM_LineMode: i32 = 16;
pub const IRM_DisablePersonalization: i32 = 32;
pub const IRM_AutoSpace: i32 = 64;
pub const IRM_Max: i32 = 128;
// InkRecognitionModes
const (
	IRM_None int32 = 0
	IRM_WordModeOnly int32 = 1
	IRM_Coerce int32 = 2
	IRM_TopInkBreaksOnly int32 = 4
	IRM_PrefixOk int32 = 8
	IRM_LineMode int32 = 16
	IRM_DisablePersonalization int32 = 32
	IRM_AutoSpace int32 = 64
	IRM_Max int32 = 128
)
const
  IRM_None = 0;
  IRM_WordModeOnly = 1;
  IRM_Coerce = 2;
  IRM_TopInkBreaksOnly = 4;
  IRM_PrefixOk = 8;
  IRM_LineMode = 16;
  IRM_DisablePersonalization = 32;
  IRM_AutoSpace = 64;
  IRM_Max = 128;
// InkRecognitionModes
pub const IRM_None: i32 = 0;
pub const IRM_WordModeOnly: i32 = 1;
pub const IRM_Coerce: i32 = 2;
pub const IRM_TopInkBreaksOnly: i32 = 4;
pub const IRM_PrefixOk: i32 = 8;
pub const IRM_LineMode: i32 = 16;
pub const IRM_DisablePersonalization: i32 = 32;
pub const IRM_AutoSpace: i32 = 64;
pub const IRM_Max: i32 = 128;
const
  IRM_None* = 0
  IRM_WordModeOnly* = 1
  IRM_Coerce* = 2
  IRM_TopInkBreaksOnly* = 4
  IRM_PrefixOk* = 8
  IRM_LineMode* = 16
  IRM_DisablePersonalization* = 32
  IRM_AutoSpace* = 64
  IRM_Max* = 128
enum InkRecognitionModes : int {
    IRM_None = 0,
    IRM_WordModeOnly = 1,
    IRM_Coerce = 2,
    IRM_TopInkBreaksOnly = 4,
    IRM_PrefixOk = 8,
    IRM_LineMode = 16,
    IRM_DisablePersonalization = 32,
    IRM_AutoSpace = 64,
    IRM_Max = 128,
}
#define global IRM_None                   0x0
#define global IRM_WordModeOnly           0x1
#define global IRM_Coerce                 0x2
#define global IRM_TopInkBreaksOnly       0x4
#define global IRM_PrefixOk               0x8
#define global IRM_LineMode               0x10
#define global IRM_DisablePersonalization 0x20
#define global IRM_AutoSpace              0x40
#define global IRM_Max                    0x80