How to export Invient Charts?

Hi,

i am an invient charts beginner and i can generate charts without problems so far. Now I am trying to export the generated charts in PDF or PNG. On the highcharts demo site i found this funcionality which is located as a button in the right corner of the chart. How can i achieve this for my invient charts? Is there a possibility to “activate” these buttons or what do i have to do? Thanks in advance for the responses.

Stefan

It is possible but with a hiccup. Currently, SVG is availabe by registering a listener ChartSVGAvailableListener. This is due to the fact that SVG is generated on the client side and is unavailable until it is rendered.

Regards

Hi Invient invient,

Thanks for your reply !
It might be a silly question but i have no clue how to use the ChartSVGAvailableListener to get the SVG in my Charts. I use following code sequence but apparently this is not the solution:

		columnChart.addListener(new ChartSVGAvailableListener() {
			
			@Override
			public void svgAvailable(ChartSVGAvailableEvent chartSVGAvailableEvent) {
				chartSVGAvailableEvent.getSVG();
			}
		});

You wrote in another Thread (“New Add-on:Invient Charts”) that [quote]
“You have to register a callback which is called when the SVG is ready.”
[/quote]. Can you give me a hint what to do ? Do you mean the Listener as Callback?

Regards,
Stefan

Hi Stefan!

Did you find a solution? I took the code from the samples:

		svgBtn.addListener(new Button.ClickListener() {

			@Override
			public void buttonClick(ClickEvent event) {
				as.addListener(new InvientCharts.ChartSVGAvailableListener() {

					@Override
					public void svgAvailable(ChartSVGAvailableEvent chartSVGAvailableEvent) {
						System.out.println(chartSVGAvailableEvent.getSVG());
					}
				});
			}
		});

but the
svgAvaliable
method never gets invoked. I cannot figure out why…

Any suggestions?

TIA
-foerdsch

Greetings,

i too faced the problem of the registered listener never getting the ChartSVGAvailableEvent. As it turned out though my application didn’t load the exporting.js. See the following line in the demo’s InvientChartsDemoAppServlet class:

 page.write("document.write(\"<script language='javascript' src='./js/modules/exporting.js'><\\/script>\");\n");

Best regards,

Sascha Vinz.