Question: I have been working with Vaadin charts during this week and I found a problem that I cannot solve. I need to send several charts to a PDF generation (using iTextpdf) and I could do it using SVGGenerator. The main problem is I cannot use this solution because the final laptop doesn't allow any installation, and Phantomjs is required for SVG Generator (no add-on can be installed neither). I tried to find a different solution to convert the chart content into file or buffer that I can manage, but I think I have been reading so much posts and I am not able to distinguish the solution. 

So, I will try to clarify basic questions first: 

a) Is it possible to manage SVG Generator without any installation in the laptop?

b) If not, is there a different way to convert a chart into an object which class could be managed to insert it into a PDF? 

I can assure you I tried to read all documentation in this forum and official Vaadin forum related to this topic but I couldn't find any solution. I don't want to seem lazy, I only want to avoid spending more time and clarify the maining pre-conditions to solve this issue.

thanks in advance for your time and help.

Kind regards,

David.

Answer: 
You can take a screenshot of your chart and append it to pdf: 

```
        Screenshot screenshot = new Screenshot();
        screenshot.setTargetComponent(myTargetComponent);
        myChartLayout.addComponent(screenshot);

        //when complete 
        screenshot.addScreenshotListener(new ScreenshotListener() {
            public void screenshotComplete(ScreenshotImage image) {
                //do something 
            }
        });

        //take screenshot
        screenshot.takeScreenshot();

```
You don't need to install phantomjs, just bundle its binary along with your web application ([Reference](http://phantomjs.org/download.html)). I did the same thing with my Amazon AWS deployment and it works just fine.