IInkAnalyzer::Analyze 메서드
동기 잉크 분석을 수행합니다.
구문
HRESULT Analyze(
[out] IAnalysisStatus **ppStatus
);
매개 변수
-
ppStatus [out]
-
분석 작업의 상태 설명하는 IAnalysisStatus에 대한 포인터입니다.
반환 값
반환 값에 대한 설명은 클래스 및 인터페이스 - 잉크 분석을 참조하세요.
설명
주의
메모리 누수 방지를 위해 더 이상 분석 상태 사용할 필요가 없는 경우 ppStatus에서 IUnknown::Release를 호출합니다.
이 메서드는 동기 잉크 분석 작업을 시작합니다. 잉크 분석에는 레이아웃 분석, 쓰기 및 그리기 분류, 필기 인식이 포함됩니다. 이 메서드는 분석 작업이 완료된 후 를 반환합니다.
이 메서드는 ppStatus가 NULL이면 E_POINTER 반환합니다.
IInkAnalyzer::Analyze 메서드 또는 IInkAnalyzer::BackgroundAnalyze 메서드를 호출하는 동안 IInkAnalyzer는 더티 지역 내에서 잉크를 분석합니다(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 태블릿 PC 버전 [데스크톱 앱만 해당] |
지원되는 최소 서버 |
지원되는 버전 없음 |
헤더 |
|
DLL |
|