Image Serving fornisce un meccanismo per tradurre gli ID oggetti esterni in ID oggetto (catalogo) specifici per le impostazioni internazionali. L’applicazione principale consiste nel fornire contenuto specifico per le impostazioni internazionali e contenuto condiviso tra più impostazioni internazionali senza che l’applicazione client debba conoscere gli ID oggetto specifici per le impostazioni internazionali.
L’applicazione può essere scritta utilizzando solo ID oggetto globali e Image Serving sostituisce automaticamente le immagini specifiche delle impostazioni internazionali e altri contenuti, se disponibili.
La locale
è specificato nelle richieste di Image Server con locale=
comando.
La traduzione degli ID oggetto è applicabile solo per l'uso basato su catalogo di Image Serving. Impossibile tradurre i nomi dei file.
Tutti i riferimenti alle voci nei cataloghi di immagini, SVG e contenuti statici sono considerati per i font-traduzione e i riferimenti ai profili ICC non sono tradotti. Oltre al object
nel percorso di /is/image e /is/static requests, questi comandi e attributi di catalogo sono soggetti alla traduzione ID: src=
, mask=
, template=
, defaultImage=
, attribute::DefaultImage
e attribute::Watermark
.
attribute::LocaleMap
definisce le regole utilizzate dal server per determinare l'ID del contenuto localizzato, dato che come input l'ID oggetto generico e il locale=
valore.
attribute::LocaleMap
è costituito da un elenco di input impostazioni internazionali (corrispondente ai valori specificati con locale=
), ciascuno con uno o più suffissi internazionali di output ( *
locSuffixes*
).
Ad esempio: attribute::LocaleMap
potrebbe essere così:
en,_E,|en_us,_E,|en_uk,_E,|fr,_F,|de,_D,|de_at,_D,|de_de,_D,|,_E,
Richiesta /is/image/myCat/myImg?locale=de_de
restituirebbe l'immagine associata alla voce del catalogo myCat/myImg_D
(supponendo che esista una voce di catalogo simile).
Fai riferimento alla descrizione di attribute::LocaleMap
per i dettagli.
Dato l'esempio precedente, il server cerca prima il locale
" de_de
" nella mappa di traduzione ID. quindi si ripete sul locSuffixes
associato a questa voce in questo caso " _D
" e "" (suffisso vuoto). Per ogni iterazione, il suffisso viene aggiunto all’ID immagine e l’id risultante viene verificato se è presente nel catalogo. Se trovato, viene utilizzata la voce di catalogo, altrimenti viene testata la voce successiva. Per questo esempio, vengono verificate le seguenti voci: myCat/myImg_D
e myCat/myImg
. Se non viene trovata alcuna corrispondenza, il server restituisce un errore o un'immagine predefinita (se configurata).
Nell’esempio precedente, attribute::LocaleMap
include un locale
che definisce la regola di traduzione predefinita, utilizzata per sconosciuta locale=
valori (ovvero quelli non esplicitamente elencati nella mappa di traduzione). Se questa mappa di traduzione è stata applicata alla richiesta /is/image/myCat/myImg?locale=ja
, la Commissione myCat/myImg_E
, se esiste o meno myCat/myImg
.
Se una mappa di traduzione non specifica una regola di traduzione predefinita, viene restituito un errore per tutte le richieste con sconosciuta locale=
valori.
Ricerca a più livelli
Spesso è opportuno raggruppare le impostazioni internazionali (ad esempio, europee, mediorientali, nordamericane) per soddisfare gli standard regionali. Questo può essere ottenuto con una ricerca a più livelli.
Per questo esempio, vogliamo supportare le raccolte per uso occidentale e medio orientale. Entrambe le raccolte sono basate sulla raccolta di immagini generica e per entrambe alcune immagini sono aggiunte o modificate. Entrambe le raccolte vengono quindi perfezionate ulteriormente per impostazioni internazionali specifiche ( m1
, m2
per due varianti mediorientali, e w1
, w2
e w3
per tre lingue occidentali), tranne per il fatto che le immagini sono condivise per w1
e w3
. Le lingue sconosciute sono associate solo alla raccolta generica e non hanno accesso alle immagini per lingue specifiche.
attribute::LocaleMap: w1,-W,|w2,-W2,-W,|w3,-W,|m1,-M1,-M,|m2,-M2,-M,|,
Nella tabella seguente sono illustrate le voci di catalogo considerate e l’ordine in cui vengono considerate per l’ID di input generico myImg
:
locale | ID catalogo da cercare |
---|---|
w1, w3 |
myImg-W, myImg |
w2 |
myImg-W2, myImg-W, myImg |
m1 |
myImg-M1, myImg-M, myImg |
m2 |
myImg-M2, myImg-M, myImg |
tutti gli altri |
myImg |
Ricerca di ID specifici
Alcune convenzioni di denominazione delle immagini potrebbero non supportare internamente ID immagine generici. Gli ID generici della richiesta devono sempre essere mappati su un ID specifico nel catalogo; spesso l'ID specifico esatto potrebbe non essere noto.
In questo esempio, le immagini per tutte le lingue possono avere _1
, _2
oppure _3
suffisso Le immagini specifiche per le impostazioni internazionali francesi possono avere _22
o _23
suffisso e immagini specifiche delle impostazioni internazionali tedesche _470
o _480
suffisso
attribute::LocaleMap: ,_1,_2,_3|fr,_22,_23,_1,_2,_3|de,_470,_480,_1,_2,_3| de_at,_470,_480,_1,_2,_3| de_de,_470,_480,_1,_2,_3
Nella tabella seguente sono illustrate le voci di catalogo considerate e l’ordine in cui vengono considerate per l’ID di input generico myImg
:
locale | ID di output per la ricerca |
---|---|
fr |
myImg_22, myImg_23, myImg_1, myImg_2,myImg_3 |
de , de_at , de_de |
myImg_470, myImg_480, myImg_1, myImg_2,myImg_3 |
tutti gli altri |
myImg_1, myImg_2, myImg_3 |
attributo::LocaleMap , attributo::DefaultLocale, locale=, req=xlate