메인 콘텐츠로 건너뛰기
이 메서드는 클라이언트 측에서 구현됩니다. Image Viewer의 다음 도구 중 하나를 사용해 수정된 블록 영역을 변경하기 전에 ABBYY FineReader Engine이 이 메서드를 호출합니다. 이 도구를 선택하는 방법은 Image Viewer Commands 설명을 참조하십시오. 이 메서드는 영역이 변경된 블록과 결과 블록의 새 영역에 대한 정보를 클라이언트에 전달합니다. 이 메서드는 결과 블록마다 호출됩니다. 예를 들어 두 영역이 하나의 블록으로 병합된 경우 이 메서드는 한 번만 호출됩니다. 두 블록의 영역을 도구로 잘라낸 경우에는 이 메서드가 두 번 호출됩니다. 도구를 사용해 블록이 삭제된 경우에는 이 메서드가 호출되지 않습니다. 이 메서드를 사용하면 작업을 취소할 수 있습니다.

구문

C++

HRESULT OnToolChangeBlockRegion(
  IIntsCollection* BlocksToChange,
  IRegion*         NewRegion,
  VARIANT_BOOL*    Cancel
);

C#

void OnToolChangeBlockRegion(
  IIntsCollection     BlocksToChange,
  IRegion         NewRegion,
  out bool       Cancel
);

Visual Basic .NET

Sub OnToolChangeBlockRegion( _
  BlocksToChange As IIntsCollection, _ _
  NewRegion As IRegion, _
  ByRef Cancel As Boolean _
)

Parameter

BlocksToChange [in] 변경된 블록의 인덱스를 IntsCollection 객체에 담아 전달합니다. 여러 블록이 하나의 블록으로 병합된 경우에만 컬렉션에 요소가 둘 이상 포함됩니다. NewRegion [in] 결과 블록의 새 영역을 Region 객체로 전달합니다. Cancel [out] 프로세스를 중단해야 함을 나타내려면 이 변수를 TRUE로 설정할 수 있습니다. 이 경우 블록의 영역은 변경되지 않습니다.

반환 값

[C++ 전용] 이 메서드가 S_OK 이외의 값을 반환하면 클라이언트 측에서 오류가 발생했음을 의미하며, 이 경우 Cancel Parameter의 값은 고려되지 않습니다.

비고

이 메서드의 클라이언트 구현은 메서드 내부에서 발생한 모든 예외를 포착하여 처리하고, 어떤 예외도 메서드 외부로 전파되지 않도록 보장해야 합니다. 예외가 메서드 외부로 전파되면 예측할 수 없는 결과(예: 프로그램 종료)로 이어질 수 있습니다.

참고 항목

IImageViewerEvents