SDK 시작하기
Selvy Pen SDK for Text는 손글씨의 좌표 (x,y) 값을 입력받아 문자로 인식한 후, 인식한 문자의 유니코드(16bit) 값을 반환해 주는 API를 제공합니다.
낱자, 단어, 문장 단위로 인식이 가능하며, 정자로 쓴 글씨, 흘려서 쓴 글씨, 겹쳐서 쓴 글씨 등 다양한 필체의 글씨를 인식할 수 있습니다
SDK는 헤더 파일과 라이브러리 파일의 모음으로 제공됩니다.
Android, iOS, Windows, Linux 등 거의 모든 플랫폼에서 사용이 가능하며, C/C++, C#, Java 등 다양한 개발언어를 지원합니다
파일 구성
Windows용 SDK는 다음과 같은 파일로 구성되어 있습니다.
Note
파일명과 파일 구성은 플랫폼에 따라 조금씩 다를 수 있습니다.예를 들어 Linux의 경우 Shared Libary로 제공되며, Library 파일은 libdhwr.so, libdhwr-core.so, libdhwr-base, libdhwr-hwfs.so 로 구성됩니다.
hdb/
인식엔진에서 사용하는 언어별 DB파일 입니다. ko_KR.hdb는 한국어(대한민국), en_US.hdb는 영어(미국) DB 파일입니다.
파일명은 ISO 639-1의 코드명을 따릅니다.
hdb 파일의 경로를 설정하는 API인DHWRSetExternalResourcePath()
를 호출 시 hdb 파일이 존재하는 디렉터리의 경로명를 파라미터로 입력합니다.include/
API명과 enum 값 등이 선언되어 있는 헤더 파일입니다.
dhwr.h 파일 하나만 include하면 됩니다. (dhwr.h 내에서 나머지 헤더 파일을 include 합니다.)libs/win32_x86/libdhwr.dll, libdhwr.lib
필기인식 기능을 수행하는 Main 엔진 라이브러리 파일니다.libs/win32_x86/lib-hwfs.dll
중국어 인식을 위한 라이브러리 파일입니다.license_key/license.key
Main 엔진을 초기화는 API인DHWRCreate()
를 호출 시 License 파일명이 포함된 경로명을 파라미터로 입력합니다.Warning
라이브러리를 사용하기 위해서는 License 파일이 필요합니다.
License 파일이 없으면 필기인식 기능은 동작하지 않습니다.release_notes.md
릴리즈 노트 파일입니다. SDK의 버전별 수정 이력이 정리되어 있습니다.
API 호출 순서
필기인식 기능을 수행하기 위한 API 호출 순서를 설명합니다. 더 자세한 코드는 Example 코드를 참고 하시기 바랍니다.
DHWRCreate
필기인식 엔진을 생성합니다.DHWRSetExternalResourcePath
hdb 파일이 존재하는 경로를 설정합니다.DHWRSetExternalLibraryPath
외부 라이브러리 파일(중국어)이 존재하는 경로를 설정합니다.
중국어를 사용하지 않는다면 호출할 필요는 없습니다.DHWRCreateInkObject
Ink Object를 생성합니다.
Ink Ojbect에 필기 좌표 값이 저장됩니다.DHWRCreateSettingObject
Setting Object를 생성합니다.
Setting Object에 인식 언어, 인식 방식 등의 설정 값이 저장됩니다.DHWRCreateResultObject
Result Object를 생성합니다.
Result Object에 인식된 문자의 정보가 저장됩니다.DHWRSetRecognitionMode
어떤 글자(낱자/여러 글자/겹쳐 쓴 글자)를 인식할지 설정합니다.DHWRAddLanguage
인식할 언어와 타입을 설정합니다
예) 언어: 영어, 타입: 대문자, 소문자DHWRAddLanguage(setting_obj, DLANG_ENGLISH, (DHWR_TYPE)(DTYPE_UPPERCASE | DTYPE_LOWERCASE))
DHWRSetAttribute
사용할 Setting Object를 지정합니다.DHWRAddPoint
필기 좌표 값을 입력합니다.
예)DHWRAddPoint(x, y) DHWRAddPoint(x1, y1) DHWRAddPoint(x2, y2) ...
DHWREndStroke
필기 좌표 값 입력 중 하나의 획이 끝나면(보통 Touch Up 이벤트가 발생 시) 호출해 줍니다.
예)DHWRAddPoint(x5, y5) ... DHWREndStroke() ... DHWRAddPoint(x6, y6) ...
DHWRecognize
필기 좌표 값 입력이 모두 끝났으면 (필기가 끝났으면) 인식을 실행 합니다.DHWRGetCandidate
인식된 문자를 얻어 옵니다.DHWRDestroyInkObject
Ink Object를 소멸시킵니다.DHWRDestroySettingObject
Setting Object를 소멸시킵니다.DHWRDestroyResultObject
Result Object를 소멸시킵니다.DHWRClose
필기인식 엔진를 소멸시킵니다.Warning
DHWRCreate()
을 호출하여 생성된 엔진은 더이상 사용하지 않을 경우 반드시DHWRClose()
을 호출하여 소멸시켜야 합니다.