test - Deshabilite las opciones de descarga de PDF y SVG en Highcharts
highcharts statistics (2)
Estoy usando Highcharts v4.0.3 con exporting.js en mi aplicación web, y quiero poder proporcionar al usuario final las siguientes opciones de descarga:
- Descargar el gráfico como JPG
- Descargar el gráfico como PNG
Sin embargo, las opciones estándar son:
- Tabla de impresión
- Descargar el gráfico como JPG
- Descargar el gráfico como PNG
- Descargar el gráfico como PDF
- Descargar el gráfico como gráfico vectorial SVG
¿Cómo puedo personalizarlo para que solo le dé al usuario las opciones JPG y PNG?
Puede establecer manualmente exporting.buttons.contextButton.menuItems
( API ) para contener los botones que desee. Deberá configurarlo para que solo contenga JPG y PNG de la siguiente manera:
menuItems: [{
textKey: ''downloadPNG'',
onclick: function () {
this.exportChart();
}
}, {
textKey: ''downloadJPEG'',
onclick: function () {
this.exportChart({
type: ''image/jpeg''
});
}
}]
Como en esta demostración de JSFiddle .
El valor predeterminado es:
menuItems: [{
textKey: ''printChart'',
onclick: function () {
this.print();
}
}, {
separator: true
}, {
textKey: ''downloadPNG'',
onclick: function () {
this.exportChart();
}
}, {
textKey: ''downloadJPEG'',
onclick: function () {
this.exportChart({
type: ''image/jpeg''
});
}
}, {
textKey: ''downloadPDF'',
onclick: function () {
this.exportChart({
type: ''application/pdf''
});
}
}, {
textKey: ''downloadSVG'',
onclick: function () {
this.exportChart({
type: ''image/svg+xml''
});
}
}]
Puede eliminar las opciones innecesarias de la siguiente manera:
if (Highcharts.getOptions().exporting) {
let contextButton = Highcharts.getOptions().exporting.buttons.contextButton;
contextButton.menuItems = contextButton.menuItems.filter((item) => {
return item.textKey === ''downloadJPEG'' || item.textKey === ''downloadPNG'';
});
}