You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

277 lines
7.1 KiB

/**
* This is a sample chart export config file. It is provided as a reference on
* how miscelaneous items in export menu can be used and set up.
*
* Please refer to README.md for more information.
*/
/**
* PDF-specfic configuration
*/
AmCharts.exportDrawingMenu = [ {
class: "export-drawing",
label: "Export",
menu: [ {
label: "Undo",
click: function() {
this.drawing.undo();
}
}, {
label: "Redo",
click: function() {
this.drawing.redo();
}
}, {
label: "Cancel",
click: function() {
this.drawing.done();
}
}, {
label: "Save",
menu: [ {
label: "JPG",
click: function() {
this.drawing.done();
this.toJPG( {}, function( data ) {
this.download( data, "image/jpg", "amCharts.jpg" );
} );
}
}, {
label: "PNG",
click: function() {
this.drawing.done();
this.toPNG( {}, function( data ) {
this.download( data, "image/png", "amCharts.png" );
} );
}
}, {
label: "PDF",
click: function() {
this.drawing.done();
this.toPDF( {}, function( data ) {
this.download( data, "application/pdf", "amCharts.pdf" );
} );
}
}, {
label: "SVG",
click: function() {
this.drawing.done();
this.toSVG( {}, function( data ) {
this.download( data, "text/xml", "amCharts.svg" );
} );
}
} ]
} ]
} ];
/**
* Define main universal config
*/
AmCharts.exportCFG = {
enabled: true,
libs: {
path: "../libs/"
},
menu: [ {
class: "export-main",
label: "Export",
menu: [
/*
** DRAWING
*/
{
label: "Draw",
click: function() {
this.capture( {
action: "draw",
freeDrawingBrush: {
width: 2,
color: "#000000",
shadow: {
color: "rgba(0,0,0,0.3)",
blur: 10,
offsetX: 3,
offsetY: 3
}
}
}, function() {
this.createMenu( AmCharts.exportDrawingMenu );
} );
}
},
/*
** DELAYED EXPORT
*/
{
label: "Delayed",
click: function() {
var _this = this;
var delay = 2;
var timer = 0;
var starttime = Number( new Date() );
var menu = this.createMenu( [ {
label: "Capturing: " + delay,
click: function() {
clearTimeout( timer );
this.createMenu( this.defaults.menu );
}
} ] );
var label = menu.getElementsByTagName( "span" )[ 0 ];
timer = setInterval( function() {
diff = ( delay - ( Number( new Date() ) - starttime ) / 1000 );
label.innerHTML = "Capturing: " + ( diff < 0 ? 0 : diff ).toFixed( 2 );
if ( diff <= 0 ) {
clearTimeout( timer );
_this.capture( {}, function() {
this.toJPG( {}, function( data ) {
this.download( data, "image/jpg", "amCharts.jpg" );
} );
this.createMenu( this.defaults.menu );
} );
}
}, 10 );
}
},
/*
** DELAYED EXPORT WITH DRAWING
*/
{
label: "Delayed Draw",
click: function() {
var _this = this;
var delay = 2;
var timer = 0;
var starttime = Number( new Date() );
var menu = this.createMenu( [ {
label: "Capturing: " + delay,
click: function() {
clearTimeout( timer );
this.createMenu( this.defaults.menu );
}
} ] );
var label = menu.getElementsByTagName( "span" )[ 0 ];
timer = setInterval( function() {
var diff = ( delay - ( Number( new Date() ) - starttime ) / 1000 );
label.innerHTML = "Capturing: " + ( diff < 0 ? 0 : diff ).toFixed( 2 );
if ( diff <= 0 ) {
clearTimeout( timer );
_this.capture( {
action: "draw"
}, function() {
_this.createMenu( AmCharts.exportDrawingMenu );
} );
}
}, 10 );
}
},
/*
** DOWNLOAD
*/
{
label: "Download",
menu: [ {
label: "JPG",
click: function() {
this.capture( {}, function() {
this.toJPG( {}, function( data ) {
this.download( data, "image/jpg", "amCharts.jpg" );
} );
} );
}
}, {
label: "PNG",
click: function() {
this.capture( {}, function() {
this.toPNG( {}, function( data ) {
this.download( data, "image/png", "amCharts.png" );
} );
} );
}
}, {
label: "PDF",
click: function() {
this.capture( {}, function() {
this.toPDF( {}, function( data ) {
this.download( data, "application/pdf", "amCharts.pdf" );
} );
} );
}
}, {
label: "PDF + data",
click: function() {
this.capture( {}, function() {
var tableData = this.setup.chart.dataProvider;
var tableBody = this.toArray( {
withHeader: true,
data: tableData
} );
var tableWidths = [];
var content = [ {
image: "reference",
fit: [ 523.28, 769.89 ]
} ];
for ( i in tableBody[ 0 ] ) {
tableWidths.push( "*" );
}
content.push( {
table: {
headerRows: 1,
widths: tableWidths,
body: tableBody
},
layout: 'lightHorizontalLines'
} );
this.toPDF( {
content: content
}, function( data ) {
this.download( data, "application/pdf", "amCharts.pdf" );
} );
} );
}
}, {
label: "SVG",
click: function() {
this.capture( {}, function() {
this.toSVG( {}, function( data ) {
this.download( data, "text/xml", "amCharts.svg" );
} );
} );
}
}, {
label: "CSV",
click: function() {
this.toCSV( {}, function( data ) {
this.download( data, "text/plain", "amCharts.csv" );
} );
}
}, {
label: "JSON",
click: function() {
this.toJSON( {}, function( data ) {
this.download( data, "text/plain", "amCharts.json" );
} );
}
}, {
label: "XLSX",
click: function() {
this.toXLSX( {}, function( data ) {
this.download( data, "application/octet-stream", "amCharts.xlsx" );
} );
}
} ]
}
]
} ]
};