在我的应用程序中,我正在制作PDF格式。这个pdf需要我生成的位图。此代码有效:
document.open();
ByteArrayOutputStream stream = new ByteArrayOutputStream();
bmap.compress(Bitmap.CompressFormat.JPEG ,
100 , stream);
Image jpg = Image.getInstance(stream.toByteArray());
jpg.scalePercent(71, 71);
document.add(jpg);
不幸的是,转换为JPEG会失去很多质量。我尝试将其转换为PNG,如下所示:
document.open();
ByteArrayOutputStream stream = new ByteArrayOutputStream();
bmap.compress(Bitmap.CompressFormat.PNG ,
100 , stream);
Image jpg = Image.getInstance(stream.toByteArray());
jpg.scalePercent(71, 71);
document.add(jpg);
但这只是生成一张无法打开的PDF。代码似乎运行良好,我通过调试器和流似乎有一个图像里面。发生了什么事?