2011-06-28 93 views
0

我是Android开发新手。我想创建一个Android应用程序,它将接受来自用户的输入,生成饼图,然后导出报告为pdf格式。我使用iTextURL)和afreechartURL)生成PDF分别,但我不知道如何生成的图表转换为图像,这样我可以插入图像到PDF。请帮忙。Android pdf和图表生成

回答

0

为什么在将图像插入到另一个PDF之前,将完美的PDF页面转换为图像?

PdfReader reader = new PdfReader(path); 
//PdfImportedPage inherits from PdfTemplate 
PdfImportedPage page = writer.getImportedPage(reader, 1); 

Image wrappedImage = new ImageTemplate(page); 
// now do whatever you would normally do to position the image where you want it. 

这并不栅格化导入的页面。它仍然是线条艺术,文字等......无论它是从哪里开始的。但现在它被包装在一个Image中,所以你可以方便地将它放置在iText布局类中。


好的。我刚刚阅读了AFreeChart上的文档。显然,你只能画一个画布。

所以画上Canvas,然后调用setBitmap将其写入到一个位图,并呼吁Bitmapcompress方法将其保存为JPEG或PNG,你的电话。

iText可以处理任何一种图像格式。你可以通过In Raw来复制所有的像素信息,但这是你的代码工作少得多。

+0

谢谢马克的回答,但我的问题有点不同,我生成的图表不是PDF页面。 JFreeChart(AFreeChart是JFreeChart的Android包装器)有一些内置工具,可以在Java AWT的帮助下将生成的图表转换为图像。但Android不支持AWT。所以我必须将生成的图表转换为图像而不使用AWT。但我不知道该怎么做。请帮忙。 – orchidrudra

+0

我不确定Adobe以外的任何人都可以做到这一点。也许是Google文档的呈现服务网站? –