文字字串本地化

文字字串本地化可讓影像目錄包含相同字串值的多個地區特定表示法。

伺服器會將符合使用locale=指定之地區設定的表示法傳回用戶端,以避免用戶端本地化,並讓應用程式只需傳送適當的locale=值與IS文字要求,即可切換地區設定。

範圍

文字字串本地化套用至下列目錄欄位中包含本地化Token ^loc= *locId*^的所有字串元素:

目錄欄位 欄位中的字串元素

目錄::ImageSet

任何包含可翻譯字串的子元素(由分隔符',' ';' ':'和/或欄位開始/結束的任意組合所分隔)。

在可本地化欄位的開頭處的 0xrrgbb 顏色值被排除在本地化之外,並且不經修改而通過。

目錄::Map

coords= shape= 屬性的值外,任何單引號或雙引號屬性值。

目錄::目標

任何目標的值。*.label 目標。*.userdata 屬性。

目錄::UserData

任何屬性的值。

字串語法

影像目錄中啟用本地化的​string​元素由一或多個本地化字串組成,每個字串前面都有本地化Token。

stringElement

[ defaultString ]*{ localizationToken localizedString }

localizationToken

^loc= locStr ^

locId

localizedString 在此 localizationToken 之後的內部地區設定ID。

localizedString

本地化字串。

defaultString

用於未知地區設定的字串。

locId 必須為ASCII,且不得包含'^'。

'^'可能發生在有無HTTP編碼的子字串中的任何位置。 伺服器會比對整個​localizationToken ^loc=locId^模式以區隔子字串。

stringElements 不包含至少一個內容 localizationToken 的ID不會視為本地化。

翻譯圖

attribute::LocaleStrMap 定義伺服器用於確定要返回到客 localizedStrings 戶端的規則。它包含輸入​locales(與使用locale=指定的值匹配)的清單,每個值都沒有或更多內部區域設定ID(locId)。 例如:

attribute::LocaleStrMap= en,E|nl,N|de,D|,

空的​locId​值表示應返回​defaultString(如果可用)。

有關詳細資訊,請參閱attribute::LocaleStrMap的說明。

翻譯過程

鑒於上述範例轉譯地圖和請求/is/image/myCat/myItem?req=&locale=nl,伺服器會先在地區設定圖中尋找" nl"。 匹配的條目nl,N表示應針對每個​stringElement​返回標有^loc=N^的​localizedString。 如果此​localizationToken​不存在於​stringElement​中,則會傳回空值。

假設myCat/myItemcatalog::UserData包含下列內容(為清楚起見,插入分行符號):

val1=111?? str1=Default1^loc=N^Dutch1^loc=D^German1?? val2=value2?? str2=^loc=E^English2^loc=N^Dutch2^loc=D^German2?? str3=Default3^loc=N^Dutch3^loc=D^German3

伺服器會回應我們的範例要求,傳回下列內容:

val1=111 str1=Dutch1 val2=value2 str2=Dutch2 str3=Dutch3

未知地區設定

在上例中,attribute::LocaleStrMap包含一個帶有空​locale​值的條目。 伺服器使用此條目來處理所有未在轉換映射中明確指定的locale=值。

示例轉換映射指定在這種情況下,應返回​defaultString(如果可用)。 因此,如果此轉換映射應用於請求/is/image/myCat/myItem?req=&locale=ja,將返回以下內容:

val1=111 str1=Default1 val2=value2 str2= str3=Default3

範例

語系

多個​locId​值可以與翻譯映射中的每個​locale​相關聯。 這可支援特定國家或地區的變化(例如,美國英文與英國英文),以選擇​stringElements,同時處理大部分具有共同基本地區(例如國際英文)的內容。

對於我們的範例,我們想新增對美國特定英文(*locId* EUS)和英國特定英文(*locId* EUK)的支援,以支援偶爾的替代拼字。 如果EUK或EUS不存在,我們將返回E。同樣地,在大部分時間返回通用德文​localizedStrings(標有D)時,可視需要提供奧地利專用的德文變體(DAT)。

attribute::LocaleStrMap 會像這樣:

en,E|en_us,EUS,E|en_uk,EUK,E|de,D|de_at,DAT,D|de_de,D

下表說明某些代表性組合​stringElement​和​locale​的輸出:

stringElement 地區設定

輸出字串

^loc=E^English^loc=D^German

en,en_us, en_uk

de, de_at, de_de

所有其他

英語

德文

-

^loc=E^English^loc=UKE^UK-English^loc=D^German^loc=DAT^Austrian

en, en_us

en_uk

de, de_de

de_at

所有其他

英語

英文

德文

奧地利文

-

^ loc=en^English^loc=USE^US-English^loc=D^German^loc=DDE^Deutsch

請注意,在本範例中, locId DDE不存在於屬性::LocaleStrMap 中,因此不會傳回與此 locId 關聯的子字串。

en, en_uk

en_us

de, de_at, de_de

所有其他

英語

美文——英文

德文

-

本頁內容

Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free