IInkAnalyzer::Analyze, méthode

Effectue une analyse synchrone des entrées manuscrites.

Syntaxe

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

Paramètres

ppStatus [out]

Pointeur vers un IAnalysisStatus qui décrit l’état de l’opération d’analyse.

Valeur retournée

Pour obtenir une description des valeurs de retour, consultez Classes et interfaces - Analyse manuscrite.

Notes

Attention

Pour éviter une fuite de mémoire, appelez IUnknown::Release sur ppStatus lorsque vous n’avez plus besoin d’utiliser l’état d’analyse.

Cette méthode démarre une opération d’analyse d’entrée manuscrite synchrone. L’analyse manuscrite comprend l’analyse de la disposition, l’écriture et la classification de dessin, ainsi que la reconnaissance de l’écriture manuscrite. Cette méthode retourne une fois l’opération d’analyse terminée.

Cette méthode retourne E_POINTER si ppStatus a la valeur NULL.

Lors d’un appel à IInkAnalyzer::Analyze, méthode ou IInkAnalyzer::BackgroundAnalyze, iInkAnalyzer analyse l’encre dans sa région sale (voir méthode IInkAnalyzer::GetDirtyRegion). Toutefois, IInkAnalyzer peut étendre l’opération d’analyse pour inclure des régions voisines.

Cette méthode définit la région sale de l’objet IInkAnalyzer sur une région vide. Si un autre thread a ajouté des données de trait qui n’ont pas été analysées, IInkAnalyzer ajoute le cadre englobant des traits non analysés à sa région sale pendant la phase de rapprochement de l’analyse.

Cette méthode retourne une erreur si votre application ne gère pas l’événement _IAnalysisEvents::UpdateStrokesCache .

IInkAnalyzer ne déclenche pas les événements _IAnalysisEvents::Results et _IAnalysisEvents::IntermediateResults en réponse à cette méthode.

Pour modifier la façon dont l’analyse d’entrée manuscrite est effectuée, utilisez la méthode IInkAnalyzer::SetAnalysisModes.

Pour plus d’informations sur l’analyse des entrées manuscrites, consultez Vue d’ensemble de l’analyse des entrées manuscrites.

Exemples

L’exemple suivant effectue une analyse d’encre de premier plan.

// 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;
}

Spécifications

Condition requise Valeur
Client minimal pris en charge
Windows XP Tablet PC Edition [applications de bureau uniquement]
Serveur minimal pris en charge
Aucun pris en charge
En-tête
IACom.h (nécessite également IACom_i.c)
DLL
IACom.dll

Voir aussi

IInkAnalyzer

AnalysisModes

IInkAnalyzer::GetDirtyRegion, méthode

IInkAnalyzer::SetDirtyRegion, méthode

IInkAnalyzer::GetRootNode, méthode

IInkAnalyzer::BackgroundAnalyze, méthode