Services de translittération
Les services de translittération ELS mappent le texte UTF-16 d’un système d’écriture à un autre système d’écriture. Chaque service est en fait des données s’appliquant à un ensemble spécifique de scripts Unicode d’entrée et de sortie, et la translittération réelle est interne à la plateforme ELS. L’application peut éventuellement énumérer les services disponibles pour des scripts d’entrée et de sortie spécifiques et sélectionner le service dont elle a besoin.
La plateforme gère les métadonnées pour les services de translittération ELS. Les métadonnées de chaque service fournissent une description du service et répertorient les scripts d’entrée et de sortie pris en charge par le service. Les métadonnées sont représentées par une structure MAPPING_SERVICE_INFO récupérée par la fonction MappingGetServices .
Entrée dans un service de translittération
L’entrée d’un service de translittération est du texte UTF-16 dans un système d’écriture.
Sortie d’un service de translittération
La sortie d’un service de translittération est du texte UTF-16 mappé à un deuxième système d’écriture. Si aucun mappage de translittération approprié n’est disponible pour un segment donné du texte d’entrée, le segment reste inchangé.
Opération de service de translittération
Un service de translittération mappe le texte Unicode d’un script d’entrée à un script de sortie, caractère par caractère ou terme par terme, le cas échéant. L’application peut choisir d’obtenir le service de translittération spécifique qui vous intéresse en spécifiant des scripts d’entrée et de sortie lors de l’appel de MappingGetServices, ou en fournissant le GUID du service. Une autre option pour l’application consiste à énumérer tous les services de translittération disponibles en spécifiant la catégorie de service « Translittération » lors de l’appel de MappingGetServices. Dans ce cas, l’application appelle chaque service et compare les résultats au texte d’origine pour voir si les résultats ont été modifiés par l’opération d’un service particulier.
L’application peut demander la reconnaissance de texte pour un service de translittération ELS avec un appel à MappingRecognizeText. Lorsqu’il reçoit la demande, le service de translittération alloue une mémoire tampon pour contenir les données translittérées, puis effectue la reconnaissance de texte pour chaque point de code dans la chaîne d’entrée fournie par l’application.
Notes
Le texte d’origine et le texte translittéré peuvent avoir des longueurs différentes.
GUID de service de translittération
Les GUID des services de translittération sont déclarés dans Elssrvc.h, comme indiqué dans le code suivant.
// {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 } };
Rubriques connexes