12e5b6d6dSopenharmony_ci--- 22e5b6d6dSopenharmony_cilayout: default 32e5b6d6dSopenharmony_cititle: Transforms 42e5b6d6dSopenharmony_cinav_order: 1100 52e5b6d6dSopenharmony_cihas_children: true 62e5b6d6dSopenharmony_ci--- 72e5b6d6dSopenharmony_ci<!-- 82e5b6d6dSopenharmony_ci© 2020 and later: Unicode, Inc. and others. 92e5b6d6dSopenharmony_ciLicense & terms of use: http://www.unicode.org/copyright.html 102e5b6d6dSopenharmony_ci--> 112e5b6d6dSopenharmony_ci 122e5b6d6dSopenharmony_ci# Transforms 132e5b6d6dSopenharmony_ci{: .no_toc } 142e5b6d6dSopenharmony_ci 152e5b6d6dSopenharmony_ci## Contents 162e5b6d6dSopenharmony_ci{: .no_toc .text-delta } 172e5b6d6dSopenharmony_ci 182e5b6d6dSopenharmony_ci1. TOC 192e5b6d6dSopenharmony_ci{:toc} 202e5b6d6dSopenharmony_ci 212e5b6d6dSopenharmony_ci--- 222e5b6d6dSopenharmony_ci 232e5b6d6dSopenharmony_ci## Overview 242e5b6d6dSopenharmony_ci 252e5b6d6dSopenharmony_ciTransforms are used to process Unicode text in many different ways. Some include 262e5b6d6dSopenharmony_cicase mapping, normalization, transliteration and bidirectional text handling. 272e5b6d6dSopenharmony_ci 282e5b6d6dSopenharmony_ci### Case Mappings 292e5b6d6dSopenharmony_ci 302e5b6d6dSopenharmony_ci[Case mapping](casemappings.md) is used to handle mappings of upper- and lower-case characters from 312e5b6d6dSopenharmony_cione language to another language, and writing systems that use letters of the 322e5b6d6dSopenharmony_cisame alphabet to handle titlecase mappings that are particular to some class. 332e5b6d6dSopenharmony_ciThey provide for certain language-specific mappings as well. 342e5b6d6dSopenharmony_ci 352e5b6d6dSopenharmony_ci### Normalization 362e5b6d6dSopenharmony_ci 372e5b6d6dSopenharmony_ci[Normalization](normalization/index.md) is used to convert text to a unique, equivalent form. Systems can 382e5b6d6dSopenharmony_cinormalize Unicode-encoded text to one particular sequence, such as a normalizing 392e5b6d6dSopenharmony_cicomposite character sequences into precomposed characters. While Normalization 402e5b6d6dSopenharmony_ciForms are specified for Unicode text, they can also be extended to non-Unicode 412e5b6d6dSopenharmony_ci(legacy) character encodings. This is based on mapping the legacy character set 422e5b6d6dSopenharmony_cistrings to and from Unicode. 432e5b6d6dSopenharmony_ci 442e5b6d6dSopenharmony_ci### Transforms 452e5b6d6dSopenharmony_ci 462e5b6d6dSopenharmony_ci[Transforms](general/index.md) provide a general-purpose package for processing Unicode text. They 472e5b6d6dSopenharmony_ciare a powerful and flexible mechanism for handling a variety of different tasks, 482e5b6d6dSopenharmony_ciincluding: 492e5b6d6dSopenharmony_ci 502e5b6d6dSopenharmony_ci* Uppercase, Lowercase, Titlecase, Full/Halfwidth conversions 512e5b6d6dSopenharmony_ci 522e5b6d6dSopenharmony_ci* Normalization 532e5b6d6dSopenharmony_ci 542e5b6d6dSopenharmony_ci* Hex and Character Name conversions 552e5b6d6dSopenharmony_ci 562e5b6d6dSopenharmony_ci* Script to Script conversion 572e5b6d6dSopenharmony_ci 582e5b6d6dSopenharmony_ci### Bidirectional Algorithm 592e5b6d6dSopenharmony_ci 602e5b6d6dSopenharmony_ciThe [Bidirectional Algorithm](bidi.md) was developed to specify the direction of text in a 612e5b6d6dSopenharmony_citext flow. 62