mob*_*kie 5 android bitmap imageview pdfrenderer
我有一个要在 ImageView 中显示的 PDF。它在 API 24-28 上显示,但在 API 29 上没有显示图像。我认为问题可能是 PDFRenderer 创建的位图。
我在该.render方法之后放置了一个断点,并(在调试器中)在此处单击“查看位图”:

在 API 29 上,有时会得到图像,有时会出现以下错误:
评估表达式时出错,已收集对象
在 API 24-28 上,我没有收到此错误。我总是得到图像。
下面是示例代码:
File file = new File(getExternalFilesDir(null), "fileName.pdf");
PdfRenderer renderer = new PdfRenderer(ParcelFileDescriptor.open(file, ParcelFileDescriptor.MODE_READ_ONLY));
if (currentPage < 0) {
currentPage = 0;
} else if (currentPage > renderer.getPageCount()) {
currentPage = renderer.getPageCount() - 1;
}
Bitmap bitmap = Bitmap.createBitmap(800, 1000, Bitmap.Config.ARGB_8888);
Rect rect = new Rect(0, 0, 800, 1000);
PdfRenderer.Page page = renderer.openPage(currentPage);
page.render(bitmap, rect, null, PdfRenderer.Page.RENDER_MODE_FOR_DISPLAY);
page.close();
renderer.close();
image.setImageBitmap(bitmap);
image.invalidate();
Run Code Online (Sandbox Code Playgroud)
有谁知道为什么图像总是显示在 API 24-28 上而不是 API 29 上?
| 归档时间: |
|
| 查看次数: |
220 次 |
| 最近记录: |