Поделиться через


Метод IInkAnalyzer::Analyze

Выполняет синхронный анализ рукописного ввода.

Синтаксис

HRESULT Analyze(
  [out] IAnalysisStatus **ppStatus
);

Параметры

ppStatus [out]

Указатель на IAnalysisStatus , описывающий состояние операции анализа.

Возвращаемое значение

Описание возвращаемых значений см. в разделе Классы и интерфейсы — анализ рукописного ввода.

Remarks

Внимание!

Чтобы избежать утечки памяти, вызовите метод IUnknown::Release в ppStatus , если вам больше не нужно использовать состояние анализа.

Этот метод запускает синхронную операцию анализа рукописного ввода. Анализ рукописного ввода включает анализ макета, классификацию текста и рисования, а также распознавание рукописного ввода. Этот метод возвращается после завершения операции анализа.

Этот метод возвращает E_POINTER , если ppStatus имеет значение NULL.

Во время вызова метода IInkAnalyzer::Analyze или метода IInkAnalyzer::BackgroundAnalyzeIInkAnalyzer анализирует рукописный ввод в пределах грязное области (см. раздел Метод 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 [только классические приложения]
Минимальная версия сервера
Ни одна версия не поддерживается
Заголовок
IACom.h (также требуется IACom_i.c)
DLL
IACom.dll

См. также раздел

IInkAnalyzer

AnalysisModes

Метод IInkAnalyzer::GetDirtyRegion

Метод IInkAnalyzer::SetDirtyRegion

Метод IInkAnalyzer::GetRootNode

Метод IInkAnalyzer::BackgroundAnalyze