사용자 정의 지역화는 특정 언어로 SpreadJS를 사용자 정의하는 기능을 제공합니다. 또한 사용자는 현재 또는 지정된 문화권 언어 리소스를 가져오고 사용자 정의 리소스로 번역할 수 있습니다.
사용자는 스키마를 사용하여 지역화 개체를 정의하고, CultureManager에 추가한 다음, 정의된 문화권으로 전환해야 합니다.
워크시트에는 정의된 단어로 다양한 속성이 표시됩니다.
예:
var lang = {
// localization config goes here
Sheets: {
Tip_Row: "行 = ", //No parameters, will add the row number
Tip_Column: "列 = ",
Tip_Height: "高度: {0} 像素", //Use the parameters
Tip_Width: "寬度: {0} 像素",
},
CalcEngine: {
Fbx_Summary: "概要"
},
Functions: {
SUM: {
description: "此函數返回某一單元格區域中所有數字之和。",
parameters: ["值1", "值2"]
},
NOW: {
description: "此函數返回當前的日期和時間。"
},
IF: {
description: "使用邏輯函數 IF 函數時,如果條件為真,該函數將返回一個值;如果條件為假,函數將返回另一個值。",
parameters: ["判断条件", "值1", "值2"]
},
}
};
GC.Spread.Common.CultureManager.addCultureInfo("zh-tw", null, lang); //Add the language
GC.Spread.Common.CultureManager.culture("zh-tw") //set the culture
또는 지정된 문화권 리소스를 기반으로 리소스를 수정합니다.
var originZHLang = GC.Spread.Common.CultureManager.getResources("zh-cn");
originZHLang.Sheets.Tip_Row = "行 = ";
originZHLang.Sheets.Tip_Column = "列 = ";
originZHLang.Sheets.Tip_Height = "高度: {0} 像素";
originZHLang.Sheets.Tip_Width = "寬度: {0} 像素";
originZHLang.CalcEngine.Fbx_Summary = "概要";
originZHLang.Functions.SUM = {
description: "此函數返回某一單元格區域中所有數字之和。",
parameters: ["值1", "值2"]
};
originZHLang.Functions.NOW = {
description: "此函數返回當前的日期和時間。"
};
originZHLang.Functions.IF = {
description: "使用邏輯函數 IF 函數時,如果條件為真,該函數將返回一個值;如果條件為假,函數將返回另一個值。",
parameters: ["判断条件", "值1", "值2"]
};
GC.Spread.Common.CultureManager.addCultureInfo("zh-tw", null, originZHLang); //Add the language
GC.Spread.Common.CultureManager.culture("zh-tw") //set the culture
힌트:
일부 문이 설정되지 않은 경우 Spread는 영어를 표시합니다(빈 문자열 “”로 설정된 경우에는 아무것도 표시하지 않음).
인수에는 표시의 경우 {0}, {1}, …가 사용됩니다(예: "Invalid {0}: {1} (must be between {2} and {3}).", "Height: {0} pixels").
사용자 정의 지역화는 fromJson/toJson을 지원하지 않으므로 사용자가 필요할 때마다 추가해야 합니다.
샘플의 네임스페이스("common", "Sheets", "Filter")는 선택 사항이지만, "Functions" 및 "TableFunctions"는 필수입니다. 유효한 형식은 다음과 같습니다.
var lang = {
Tip_Row: "行 = ", //No parameters, will add the row
Tip_Column: "列 = ",
Tip_Height: "高度: {0} 像素", //Use the parameters
Tip_Width: "寬度: {0} 像素",
CalcEngine: { //the CalcEngine can be optional, and put Fbx_Summary into the lang object.
Fbx_Summary: "概要"
},
Functions: { //The "Functions" is needed to custom the function's description.
SUM: {
description: "此函數返回某一單元格區域中所有數字之和。",
parameters: ["值1", "值2"]
},
}
};