我想在Android中使用itext在我的PDF中添加饼图。 但是与饼图相关的所有示例似乎都使用以下2D类:
import csv
def write_into_csv_file(file_path,array):
with open(file_path, 'wb') as f:
writer = csv.writer(f)
writer.writerows(array)
string = 'sjhdfakjhdfkajhdfakjhdfakjfhaksjfhasdfkjaskjfh'
ls=[]
for n in range(len(string)-16):
if len(string[n:n+16]) == 16:
ls.append(string[n:n+16])
print(string[n:n+16])
else:
break
write_into_csv_file('hello.csv',ls)
在itext-5的 android版本中实际上是awt类和不可用。 使用2D分类的任何替代方法?
已编辑:我正在使用itextg版本的android。它缺少上面提到的2D类。
答案 0 :(得分:2)
所以我找到了解决方案。 我使用MPAndroidChart来制作PieChart。 该库有一个从绘制的饼图中获取位图的方法。
pieChart.getChartBitmap();
因此,一旦获得位图,iText将允许您将位图添加到您的pdf中。 最终代码可能如下所示:
ByteArrayOutputStream stream = new ByteArrayOutputStream();
Bitmap bitmap = pieChart.getChartBitmap();
bitmap.compress(Bitmap.CompressFormat.JPEG, 100, stream);
Image myImg = Image.getInstance(stream.toByteArray());
myImg.setAlignment(Image.MIDDLE);
document.add(myImg);
干杯!
答案 1 :(得分:0)
对于Android,您需要使用itextg
代替itextpdf
。
不应使用使用Android上不可用的类的示例。当您找到解决方案时,如果您提交了文档,那就太好了。