カスタムローカライゼーションは、特定の言語でSpreadJSをカスタマイズする機能を提供します。 現在のカルチャまたは特定のカルチャの言語リソースを取得し、リソースをカスタマイズすることもできます。
この機能を使うには、スキーマを使用してローカライズオブジェクトを定義し、CultureManagerに追加してから、定義されたカルチャに切り替える必要があります。
ワークシートには、定義された単語とともに異なるプロパティが表示されます。
以下は、中国語でカスタマイズするサンプルです。
var lang = {
// ローカライズ設定
Sheets: {
Tip_Row: "行 = ", // パラメータがない場合、行番号を追加します
Tip_Column: "列 = ",
Tip_Height: "高度: {0} 像素", // パラメーターを使用する
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); // 言語の追加
GC.Spread.Common.CultureManager.culture("zh-tw") // カルチャの設定
または、特定のカルチャに基づいたリソースを修正します。
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
使用時のヒント:
一部のステートメントが設定されていない場合、SpreadJSは英語を表示します(空の文字列 "" に設定されている場合、何も表示されません)。
引数は、表示に{0}、{1}、…を使用します(例:「無効な{0}:{1}({2}と{3}の間でなければなりません)。」、「高さ:{0}ピクセル」)。
カスタムローカライゼーションはfromJson / toJsonをサポートしていないため、ユーザーは必要になるたびに追加する必要があります。
サンプルのネームスペース(「common」、「Sheets」、「Filter」)はオプションです。 ただし、「Functions」と「TableFunctions」は必須です。 以下も有効な形式です。
var lang = {
Tip_Row: "行 = ", //パラメータがない場合、行を追加します
Tip_Column: "列 = ",
Tip_Height: "高度: {0} 像素", // パラメーターを使用する
Tip_Width: "寬度: {0} 像素",
CalcEngine: { // CalcEngineはオプションで、Fbx_Summaryをlangオブジェクトに設定します
Fbx_Summary: "概要"
},
Functions: { // 関数の説明をカスタマイズするには、「Functions」が必要です。
SUM: {
description: "此函數返回某一單元格區域中所有數字之和。",
parameters: ["值1", "值2"]
},
}
};