ChartGlobalizationSettingsクラスを使ってNode.jsとC++でチャートコンポーネントの異なる言語を設定
可能な使用シナリオ
Aspose.Cells APIはChartGlobalizationSettingsクラスを公開しており、これはユーザーがスプレッドシート内のチャートコンポーネントを異なる言語に設定し、小計のカスタムラベルも作成できるようにするためです。
ChartGlobalizationSettingsクラスの紹介
ChartGlobalizationSettingsクラスは、現在8つのメソッドを提供しており、これらをカスタムクラスでオーバーライドして、軸タイトル名、軸単位名、チャートタイトル名などを異なる言語に翻訳できます。
- ChartGlobalizationSettings.getAxisTitleName():軸タイトルの名前を取得します。
- ChartGlobalizationSettings.getAxisUnitName(DisplayUnitType):軸単位の名前を取得します。
- ChartGlobalizationSettings.getChartTitleName():チャートタイトルの名前を取得します。
- ChartGlobalizationSettings.getLegendDecreaseName():凡例の減少の名前を取得します。
- ChartGlobalizationSettings.getLegendIncreaseName():凡例の増加を示す名前を取得。
- ChartGlobalizationSettings.getLegendTotalName():凡例の合計の名前を取得します。
- ChartGlobalizationSettings.getOtherName():チャートの「その他」ラベルの名前を取得します。
- ChartGlobalizationSettings.getSeriesName():チャート内の系列の名前を取得します。
カスタム言語の翻訳
以下、次のデータを元にウォーターフォールチャートを作成します。チャートコンポーネントの名前は、チャート内で英語で表示されます。チャートタイトル、凡例の増減名、合計名、および軸タイトルのトルコ語表示方法を示すためにトルコ語の例を使用します。
サンプルコード
次のサンプルコードは、サンプルExcelファイルを読み込みます。
try {
const path = require("path");
const AsposeCells = require("aspose.cells.node");
class TurkeyChartGlobalizationSettings extends AsposeCells.ChartGlobalizationSettings {
getChartTitleName() {
return "Grafik Başlığı"; // Chart Title
}
getLegendIncreaseName() {
return "Artış"; // Increase
}
getLegendDecreaseName() {
return "Düşüş"; // Decrease
}
getLegendTotalName() {
return "Toplam"; // Total
}
getAxisTitleName() {
return "Eksen Başlığı"; // Axis Title
}
}
async function chartGlobalizationSettingsTest() {
// Create an instance of existing Workbook
const dataDir = path.join(__dirname, "data");
const pathName = path.join(dataDir, "input.xlsx");
const workbook = new AsposeCells.Workbook(pathName);
// Set custom chartGlobalizationSettings, here is TurkeyChartGlobalizationSettings
workbook.getSettings().getGlobalizationSettings().setChartSettings(new TurkeyChartGlobalizationSettings());
// Get the worksheet
const worksheet = workbook.getWorksheets().get(0);
const chartCollection = worksheet.getCharts();
// Load the chart from source worksheet
const chart = chartCollection.get(0);
// Chart Calculate
chart.calculate();
// Get the chart title
const title = chart.getTitle();
console.log("\nWorkbook chart title: " + title.getText());
const legendEntriesLabels = chart.getLegend().getLegendLabels();
// Output the name of the Legend
legendEntriesLabels.forEach(label => {
console.log("\nWorkbook chart legend: " + label);
サンプルコードによって生成された出力
これは上記のサンプルコードのコンソール出力です。
Workbook chart title: Grafik Başlığı
Workbook chart legend: Artış
Workbook chart legend: Düşüş
Workbook chart legend: Toplam
Workbook category axis title: Eksen Başlığı