La classe Unicode contiene filtri che consentono di applicare varie funzioni Unicode, su testi in formato UTF di input.
I filtri di tipo Normalize rappresentano le funzioni Unicode di normalizzazione.
APPROFONDIMENTO: UNICODE NORMALIZATION FUNCTION Alcuni caratteri Unicode hanno più rappresentazioni binarie equivalenti, rendendo più complesse determinate operazioni (e.g. la ricerca, l'ordinamento e l'associazione). Lo standard Unicode definisce funzioni di normalizzazione che restituiscono una singola rappresentazione binaria per qualsiasi rappresentazione binaria equivalente di uno stesso carattere. I processi di normalizzazione sottostanti utilizzano diversi algoritmi, basati sui concetti di: ✓ equivalenza canonica; ✓ equivalenza per compatibilità. Due caratteri Unicode sono equivalenti canonicamente se hanno lo stesso aspetto e significato in stampa o in visualizzazione. Due caratteri Unicode sono equivalenti per compatibilità se hanno lo stesso significato ma aspetto diverso in stampa o in visualizzazione. |
In particolare:
✓ il filtro NFC - Canonical Decomposition, followed by Canonical Composition applica, a testi in formato UTF16-LE, la funzione di normalizzazione NFC;
✓ il filtro NFD - Canonical Decomposition applica, a testi in formato UTF16-LE, la funzione di normalizzazione NFD;
✓ il filtro NFKD - Compatibility Decomposition applica, a testi in formato UTF16-LE, la funzione di normalizzazione NFKD;
✓ il filtro NFKC - Compatibility Decomposition, followed by Canonical Composition applica, a testi in formato UTF16-LE, la funzione di normalizzazione NFKC.
L'output dei filtri di tipo Normalize è sempre un testo in formato Unicode UTF16-LE. |
I filtri Swap UTF-16 word order e Swap UTF-32 word order scambia coppie di byte all'interno di testi in formato, rispettivamente, UTF-16 e UTF-32.
Il filtro Remove BOM rimuove l'eventuale Unicode Byte Order Mark dall'inizio di un file di testo in formato Unicode.
Il Byte Order Mark è una piccola sequenza di byte che viene posizionata all'inizio di file di testo per indicarne il tipo di codifica Unicode. |
Il filtro Make Big Endian converte un file in codifica Little Endian in un file in codifica Big Endian. Viceversa, il filtro Make Little Endian converte un file in codifica Big Endian in un file in codifica Little Endian.
I filtri Make Big Endian e Make Little Endian possono essere applicati solo su testi Unicode che iniziano con un Byte Order Mark. |
Il filtro Compose converte ogni stringa del testo in input in stringhe Unicode in formato normalizzato, utilizzando la funzione Compose transformation.
L'output di un filtro Compose è sempre un testo in formato Unicode UTF16-LE. |
Il filtro Convert UTF16-LE Escaped Unicode converte un testo Unicode UTF16-LE di input in un testo in formato ASCII.