android - Mupdf 生成缩略图

标签 android mupdf

我使用 Mupdf Library 实现了电子书应用程序,并希望为我的项目中的每个 pdf 文件生成缩略图 谁能告诉我如何生成这个? 提前致谢

最佳答案

在 Librelio 中,他们使用的是没有 Cookie 的旧版本项目 muPDF。在新版本中,您需要扩展 mu pdf 核心,如下所示:

class MuPDFThumb extends MuPDFCore{
    public MuPDFThumb(Context context, String filename) throws Exception{
        super(context, filename);
    }

    public Bitmap thumbOfFirstPage(int w, int h){
        PointF pageSize = getPageSize(0);
        float mSourceScale = Math.max(w/pageSize.x, h/pageSize.y);

        Point size = new Point((int)(pageSize.x*mSourceScale), (int)(pageSize.y*mSourceScale));
        final Bitmap bp = Bitmap.createBitmap(size.x,size.y, Bitmap.Config.ARGB_8888);

        drawPage(bp,0,size.x, size.y, 0, 0, size.x, size.y,new Cookie());
        return bp;
    }
}

需要extends,因为Cookie是MuPDFCore的内部类,调用drawPage需要它。

thumbOfFirstPage 方法有两个参数:要用位图填充的 ImageView 的宽度和高度:

thumbnailImageView.setImageBitmap(bPGenerated) 在 UIThread 中

关于android - Mupdf 生成缩略图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17348382/

相关文章:

iOS 替代 PDF 渲染器

android - Android 上的 Mupdf 内存泄漏

java - 我如何获取在另一个类的方法中获取值的数组

android - 如何处理 Gradle 本地依赖项之间的优先级?

android for循环与字符串[]数组

ios - 使用 MuPDF 库在 iPhone/iPad 上开发电子书阅读器

android - 如何申请android :textIsSelectable option for MuPDF viewer?

android - 为我的 Android 应用程序验证用户身份的最佳方法是什么?

android - 如何使用 fabric 获取用户时间线?

android - MuPdf 内存不足