다음을 통해 공유


음역 서비스

ELS 음역 서비스는 한 쓰기 시스템에서 다른 쓰기 시스템으로 UTF-16 텍스트를 매핑합니다. 각 서비스는 실제로 특정 입력 및 출력 유니코드 스크립트 집합에 적용되는 데이터이며 실제 음역은 ELS 플랫폼 내부입니다. 애플리케이션은 필요에 따라 특정 입력 및 출력 스크립트에 사용 가능한 서비스를 열거하고 필요한 서비스를 선택할 수 있습니다.

플랫폼은 ELS 음역 서비스에 대한 메타데이터를 유지 관리합니다. 각 서비스에 대한 메타데이터는 서비스에 대한 설명을 제공하고 서비스에서 지원하는 입력 및 출력 스크립트를 나열합니다. 메타데이터는 MappingGetServices 함수에서 검색한 MAPPING_SERVICE_INFO 구조체로 표시됩니다.

음역 서비스에 대한 입력

음역 서비스에 대한 입력은 하나의 쓰기 시스템에서 UTF-16 텍스트입니다.

음역 서비스의 출력

음역 서비스의 출력은 두 번째 쓰기 시스템에 매핑된 UTF-16 텍스트입니다. 입력 텍스트의 지정된 청크에 적절한 음역 매핑을 사용할 수 없는 경우 청크는 변경되지 않은 상태로 유지됩니다.

음역 서비스 작업

음역 서비스는 입력 스크립트의 유니코드 텍스트를 문자 또는 용어별로 출력 스크립트에 적절하게 매핑합니다. 애플리케이션은 MappingGetServices를 호출할 때 입력 및 출력 스크립트를 지정하거나 서비스 GUID를 제공하여 관심 있는 특정 음역 서비스를 가져오도록 선택할 수 있습니다. 애플리케이션의 또 다른 옵션은 MappingGetServices를 호출할 때 서비스 범주 "음역"을 지정하여 사용 가능한 모든 음역 서비스를 열거하는 것입니다. 이 경우 애플리케이션은 각 서비스를 호출하고 결과를 원래 텍스트와 비교하여 특정 서비스의 작업으로 결과가 변경되었는지 확인합니다.

애플리케이션은 MappingRecognizeText를 호출하여 ELS 음역 서비스에 대한 텍스트 인식을 요청할 수 있습니다. 요청을 받으면 음역 서비스는 음역된 데이터를 포함하도록 버퍼를 할당한 다음 애플리케이션에서 제공하는 입력 문자열의 각 코드 지점에 대해 텍스트 인식을 수행합니다.

참고

원래 텍스트와 음역된 텍스트의 길이가 다를 수 있습니다.

 

음역 서비스 GUID

음역 서비스의 GUID는 다음 코드와 같이 Elssrvc.h에서 선언됩니다.

// {A3A8333B-F4FC-42f6-A0C4-0462FE7317CB}
static const GUID ELS_GUID_TRANSLITERATION_HANT_TO_HANS =
    { 0xA3A8333B, 0xF4FC, 0x42f6, { 0xA0, 0xC4, 0x04, 0x62, 0xFE, 0x73, 0x17, 0xCB } };

// {3CACCDC8-5590-42dc-9A7B-B5A6B5B3B63B}
static const GUID ELS_GUID_TRANSLITERATION_HANS_TO_HANT =
    { 0x3CACCDC8, 0x5590, 0x42dc, { 0x9A, 0x7B, 0xB5, 0xA6, 0xB5, 0xB3, 0xB6, 0x3B } };

// {D8B983B1-F8BF-4a2b-BCD5-5B5EA20613E1}
static const GUID ELS_GUID_TRANSLITERATION_MALAYALAM_TO_LATIN =
    { 0xD8B983B1, 0xF8BF, 0x4a2b, { 0xBC, 0xD5, 0x5B, 0x5E, 0xA2, 0x06, 0x13, 0xE1 } };

// {C4A4DCFE-2661-4d02-9835-F48187109803}
static const GUID ELS_GUID_TRANSLITERATION_DEVANAGARI_TO_LATIN =
    { 0xC4A4DCFE, 0x2661, 0x4d02, { 0x98, 0x35, 0xF4, 0x81, 0x87, 0x10, 0x98, 0x03 } };

// {3DD12A98-5AFD-4903-A13F-E17E6C0BFE01}
static const GUID ELS_GUID_TRANSLITERATION_CYRILLIC_TO_LATIN =
    { 0x3DD12A98, 0x5AFD, 0x4903, { 0xA1, 0x3F, 0xE1, 0x7E, 0x6C, 0x0B, 0xFE, 0x01 } };

// {F4DFD825-91A4-489f-855E-9AD9BEE55727}
static const GUID ELS_GUID_TRANSLITERATION_BENGALI_TO_LATIN =
    { 0xF4DFD825, 0x91A4, 0x489f, { 0x85, 0x5E, 0x9A, 0xD9, 0xBE, 0xE5, 0x57, 0x27 } };

확장 언어 서비스 정보