在imageview中显示来自url的pdf的第一页

h9a6wy2h  于 2021-06-30  发布在  Java
关注(0)|答案(1)|浏览(334)

我想在imageview中显示pdf的第一页。我只有pdf文件的链接。我在whatsapp和许多其他应用程序中都看到了这个功能。
或者我们需要将pdf的第一页转换为图像,然后将图像与pdf一起上载,以便在显示时在imageview中使用它。
我有一个recyclerview,其中我需要显示服务器中所有可用pdf的列表。在显示时,我需要在imageview中显示可用pdf的第一页。当用户单击imagview时,下载开始。我已经做了recyclerview部分和下载部分,但我不知道如何通过imageview中的链接显示pdf的第一页。recyclerview中的每个项都应该如下所示。

s3fp2yjn

s3fp2yjn1#

此代码从文件路径返回位图pdf第一页。

private Bitmap pdfToBitmap(File pdfFile) {
            Bitmap bitmap = null;
            try {
                PdfRenderer renderer = new PdfRenderer(ParcelFileDescriptor.open(pdfFile, ParcelFileDescriptor.MODE_READ_ONLY));
                final int pageCount = renderer.getPageCount();
                if(pageCount>0){
                    PdfRenderer.Page page = renderer.openPage(0);
                    int width = (int) (page.getWidth());
                    int height = (int) (page.getHeight());
                    bitmap = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888);

                    page.render(bitmap, null, null, PdfRenderer.Page.RENDER_MODE_FOR_DISPLAY);
                    page.close();
                    renderer.close();
                }
            } catch (Exception ex) {
                ex.printStackTrace();
            }
            return bitmap;
        }

相关问题