iText有一些性能问题。将图像放入PDF需要大约20秒。问题是我有时间以任何格式制作这些图像,但我应该能够非常快速地将这些图像添加到PDF中。
用于图像创建的代码是:
androidsScreenElement.setDrawingCacheEnabled(true);
androidsScreenElement.buildDrawingCache(true);
Bitmap cache = plot.getDrawingCache();
fos = new FileOutputStream("filepath.png", true);
cache.compress(Bitmap.CompressFormat.PNG, 75, fos);
fos.flush();
fos.close();
只要能为PDF创建者制作最佳图像,此代码就可以运行。
PDF创建者代码是:
Document document = new Document(PageSize.A4, 30, 10, 70, 70);
PdfWriter writer = PdfWriter.getInstance(document, file);
Image image = Image.getInstance(APsFile.getAbsolutePath());
image.scalePercent(65);
image.setAlignment(Image.ALIGN_CENTER);
document.add(image);
这是一个关键部分,PDF代码执行时间太长。我想知道什么是最佳图像格式。此外,我无法进行缓存,因为我的Android设备已经太亮了内存,所以我必须在运行PDF生成代码之前将所有5个图像保留在文件中。