Localizzazione di applicazioni

Flash Player 9 e versioni successive, Adobe AIR 1.0 e versioni successive

La localizzazione è il processo di inclusione di risorse con lo scopo di supportare più versioni linguistiche. Le impostazioni internazionali sono la combinazione di una lingua e un codice di paese. Ad esempio, en_US fa riferimento alla lingua inglese parlata negli Stati Uniti, mentre fr_FR fa riferimento alla lingua francese parlata in Francia. Per localizzare un'applicazione per queste impostazioni internazionali, è necessario fornire due gruppi di risorse: uno per l'impostazione internazionale en_US e uno per quella fr_FR.

Impostazioni internazionali diverse possono avere in comune la stessa lingua. Ad esempio, en-US ed en_GB (Gran Bretagna) sono impostazioni internazionali diverse. In questo caso, entrambe le impostazioni internazionali utilizzano la lingua inglese, ma il codice del paese indica che si tratta di impostazioni internazionali diverse che pertanto potrebbero utilizzare risorse differenti. Ad esempio, il correttore ortografico di un'applicazione con impostazioni internazionali en-US potrebbe prevedere la parola “color”, mentre la stessa parola in un'applicazione con impostazioni internazionali en_GB sarebbe scritta “colour”. Inoltre, le unità di misura della valuta sarebbero rappresentate dal dollaro o dalla sterlina, a seconda delle impostazioni internazionali, e anche il formato di data e ora potrebbe essere diverso.

È inoltre possibile fornire un gruppo di risorse per una lingua senza specificare un codice di paese. Potete ad esempio fornire risorse en per la lingua inglese e ulteriori risorse per l'impostazione locale en-US, specifiche dell'inglese americano.

La localizzazione va oltre la semplice traduzione delle stringhe utilizzate nell'applicazione. Può comprendere anche qualsiasi tipo di risorsa, come file audio, immagini e video.

Selezione delle impostazioni locali

Per determinare quali impostazioni locali utilizza l'applicazione, è possibile adottare uno dei metodi seguenti:

  • flash.globalization package: utilizzare le classi basate sulle impostazioni internazionali nel pacchetto flash.globalization per recuperare le impostazioni internazionali predefinite per l'utente in base al sistema operativo e alle preferenze utente. Questo è l'approccio preferito per applicazioni eseguite sui runtime Flash Player 10.1 o successivi o AIR 2.0 o successivi. Per ulteriori informazioni, vedete Determinazione delle impostazioni internazionali .

  • Richiesta all'utente: è possibile avviare l'applicazione con impostazioni locali predefinite e quindi chiedere all'utente di scegliere le impostazioni locali preferite.

  • (Solo AIR) Capabilities.languages : la proprietà Capabilities.languages elenca un array di lingue disponibili nelle lingue preferite dall'utente, in base all'impostazione nel sistema operativo. Le stringhe contengono tag language (e informazioni script e region, ove applicabili) definite dallo standard RFC4646 ( http://www.ietf.org/rfc/rfc4646.txt ) e utilizzano il trattino come delimitatore (ad esempio, "en-US" o "ja-JP" ). La prima voce dell'array restituito presenta lo stesso ID lingua primario della proprietà language. Se ad esempio languages[0] è impostata su "en-US" , la proprietà language è impostata su "en". Se invece la proprietà language è impostata su "xu" (a indicare una lingua sconosciuta), il primo elemento dell'array languages è diverso.

  • Capabilities.language — La proprietà Capabilities.language fornisce il codice della lingua per l'interfaccia utente del sistema operativo. Questa proprietà è tuttavia limitata a 20 lingue conosciute. Nei sistemi in lingua inglese, restituisce solo il codice della lingua e non il codice del paese. Per questi motivi, è consigliabile utilizzare il primo elemento dell'array Capabilities.languages .

Localizzazione di contenuto Flex

Adobe Flex include un framework per la localizzazione di contenuto Flex che comprende le classi Locale, ResourceBundle e ResourceManagerImpl, nonché le interfacce IResourceBundle, IResourceManagerImpl.

Una libreria di localizzazione di Flex contenente classi di utilità per l'ordinamento delle impostazioni internazionali applicazione è disponibile in Google Code (http://code.google.com/p/as3localelib/).

Localizzazione di contenuto Flash

Adobe Flash Professional comprende una classe Locale nei componenti di ActionScript 3.0. che consente di controllare la modalità di visualizzazione di un testo multilingua da parte di un file SWF. Il pannello Stringhe di Flash consente di utilizzare identificatori di stringa anziché valori letterali nei campi di testo dinamici, Questo servizio consente di creare un file SWF che visualizza il testo caricato da un file XML specifico di una lingua. Per informazioni sull'utilizzo della classe Locale, vedete la Guida di riferimento di Adobe ActionScript 3.0 per la piattaforma Adobe Flash .

Localizzazione di applicazioni AIR

AIR SDK comprende un framework per la localizzazione HTML (contenuto in un file AIRLocalizer.js). Tale framework include API che agevolano le operazioni con più impostazioni locali in un'applicazione basata su HTML. Una libreria ActionScript per l'ordinamento delle impostazioni internazionali è disponibile all'indirizzo http://code.google.com/p/as3localelib/.

Localizzazione di date, ore e valute

Il modo con cui le applicazioni presentano date, ore e valute varia notevolmente per ogni impostazione locale. Ad esempio, lo standard statunitense per indicare le date è mese/giorno/anno, mentre quello europeo è giorno/mese/anno.

È possibile scrivere codice per formattare date, ore e valute. Ad esempio, il codice seguente converte un oggetto Date nel formato mese/giorno/anno o giorno/mese/anno. Se la variabile locale (che rappresenta le impostazione locali) è impostata su "en_US" , la funzione restituisce il formato mese/giorno/anno. L'esempio converte un oggetto Date nel formato giorno/mese/anno per tutte le altre impostazioni locali:

function convertDate(date) 
{ 
    if (locale == "en_US") 
    { 
        return (date.getMonth() + 1) + "/" + date.getDate() + "/" + date.getFullYear(); 
    } 
    else 
    { 
        return date.getDate() + "/" + (date.getMonth() + 1) + "/" + date.getFullYear(); 
    } 
}

ADOBE FLEX

Il framework Flex comprende controlli per formattare date, ore e valute. Sono inclusi i controlli DateFormatter e CurrencyFormatter.