Méthode IInkAnalyzer::Analyze
Effectue une analyse manuscrite synchrone.
Syntaxe
HRESULT Analyze(
[out] IAnalysisStatus **ppStatus
);
Paramètres
-
ppStatus [out]
-
Pointeur vers un IAnalysisStatus qui décrit la status 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’analyse status.
Cette méthode démarre une opération d’analyse d’encre synchrone. L’analyse manuscrite inclut l’analyse de la disposition, la classification de l’écriture et du dessin et 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 à la méthode IInkAnalyzer::Analyze ou À la méthode IInkAnalyzer::BackgroundAnalyze, IInkAnalyzer analyse l’entrée manuscrite dans sa région sale (voir IInkAnalyzer::GetDirtyRegion, méthode). Toutefois, IInkAnalyzer peut étendre l’opération d’analyse pour inclure les 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 manuscrite est effectuée, utilisez la méthode IInkAnalyzer::SetAnalysisModes.
Pour plus d’informations sur l’analyse manuscrite, consultez Vue d’ensemble de l’analyse d’encre.
Exemples
L’exemple suivant effectue une analyse de l’entrée manuscrite au 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 Édition Tablet PC [applications de bureau uniquement] |
Serveur minimal pris en charge |
Aucun pris en charge |
En-tête |
|
DLL |
|