[OCR] 플러그인 API
목차
- EVENT_TYPE
- on(eventType, listener)
- off(eventType, listener)
- getHTMLByOCRData(ocrData, type, tableRecognition)
EVENT_TYPE
3.0.2401 버전부터 지원, 2.18.2401 버전부터 지원
OCR 플러그인에서 사용할 수 있는 이벤트 타입은 다음과 같습니다.
이벤트에 대한 리스너를 추가하거나 제거하려면 on() 및 off()를 사용합니다.
| 이벤트 타입 | 설명 |
|---|---|
OCR_DATA_CHANGED | OCR 데이터가 변경될 때 발생합니다. |
리스너 매개변수
| 이름 | 타입 | 설명 |
|---|---|---|
event | object | 아래 shape를 참고합니다. |
{
type: {string},
editor: {object},
isSync: {boolean},
requestData: { url: {string}, file: {file}, page: {number} },
responseData: { response: {object} },
cached: {boolean}
}
type— 이벤트 타입editor— Synap Editor 객체isSync— 리스너가 동기식인지 여부requestData— OCR 요청 데이터url— OCR 요청 URLfile— OCR 요청 파일page— OCR 요청 파일의 페이지 번호
responseData— OCR 응답 데이터response— OCR 서버로부터의 응답 데이터
cached— 결과가 캐시에서 왔는지 여부
예시
var editor = new SynapEditor(id, synapEditorConfig);
var ocr = editor.plugins.ocr;
var EVENT_TYPE = ocr.EVENT_TYPE;
var options = { sync: true }
ocr.on(EVENT_TYPE.OCR_DATA_CHANGED, function (event) {
console.log(event)
}, options);
on(eventType, listener)
OCR 플러그인에서 발생하는 이벤트에 대한 리스너를 등록합니다.
매개변수
| 이름 | 타입 | 설명 |
|---|---|---|
eventType | string | 이벤트 타입입니다. |
listener | 함수 | 이벤트 리스너입니다. |
options | object | 동기 / 비동기 옵션. |
예시
var editor = new SynapEditor(id, synapEditorConfig);
var ocr = editor.plugins.ocr;
var EVENT_TYPE = ocr.EVENT_TYPE;
var eventListener = function () {};
var options = { sync: true }
ocr.on(EVENT_TYPE.OCR_DATA_CHANGED, eventListener, options);
off(eventType, listener)
OCR 플러그인에서 발생한 이벤트에 대한 리스너를 제거합니다.
매개변수
| 이름 | 타입 | 설명 |
|---|---|---|
eventType | string | 이벤트 타입입니다. |
listener | 함수 | 이벤트 리스너입니다. |
예시
var editor = new SynapEditor(id, synapEditorConfig);
var ocr = editor.plugins.ocr;
var EVENT_TYPE = ocr.EVENT_TYPE;
var eventListener = function () {};
ocr.off(EVENT_TYPE.OCR_DATA_CHANGED, eventListener);
getHTMLByOCRData(ocrData, type, tableRecognition)
3.0.0 버전부터 지원, 2.18.0 버전부터 지원
OCR로 추출된 이미지 데이터에서 HTML을 생성하고 문자열로 반환합니다.
매개변수
| 이름 | 타입 | 기본값 | 설명 |
|---|---|---|---|
ocrData | object | 없음 (필수) | OCR로 추출된 이미지 데이터입니다. |
type | string | 'block' | 결과 박스의 좌표 표시 타입입니다. 'line': OCR 데이터가 줄 단위로 분할되어 HTML로 변환됩니다. 'block': OCR 데이터가 블록 단위로 그룹화되어 HTML로 변환됩니다. |
tableRecognition | boolean | false | 인식된 표 영역 정보를 반환할지 여부입니다. true: 표가 포함된 문서에서 표 구조를 인식하여 table 태그로 반환합니다. false: 표 구조를 별도로 인식하지 않고 일반 텍스트로 처리합니다. |
반환값
| 타입 | 설명 |
|---|---|
| string | 생성된 HTML 문자열입니다. |
예시
var ocrData = { /* image data extracted by OCR */ };
// 'line' type
var htmlResultLine = editor.plugins.ocr.getHTMLByOCRData(ocrData, 'line', false);
// 'block' type
var htmlResultBlock = editor.plugins.ocr.getHTMLByOCRData(ocrData, 'block', false);
// with tableRecognition set to true
var htmlResultTable = editor.plugins.ocr.getHTMLByOCRData(ocrData, 'block', true);