Использование класса ChartGlobalizationSettings для установления различных языков для компонента графика с Node.js через C++
Возможные сценарии использования
API Aspose.Cells предоставили класс ChartGlobalizationSettings для сценариев, когда пользователь желает установить язык элементов графика и пользовательские метки для промежуточных итогов в электронной таблице.
Введение в класс ChartGlobalizationSettings
Класс ChartGlobalizationSettings в настоящее время предлагает 8 методов, которые можно переопределить в пользовательском классе для перевода таких элементов, как название AxisTitle, название AxisUnit, название ChartTitle и т. д. на разные языки.
- ChartGlobalizationSettings.getAxisTitleName(): Получает название заголовка для оси.
- ChartGlobalizationSettings.getAxisUnitName(DisplayUnitType): Получает название единицы оси.
- ChartGlobalizationSettings.getChartTitleName(): Получает название заголовка диаграммы.
- ChartGlobalizationSettings.getLegendDecreaseName(): Получает название уменьшения для легенды.
- ChartGlobalizationSettings.getLegendIncreaseName(): Получает название Increase для легенды.
- 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ığı