Android PDF Viewer Library 或 muPDF 库教程

Posted

技术标签:

【中文标题】Android PDF Viewer Library 或 muPDF 库教程【英文标题】:Android PDF Viewer Library or muPDF library tutorials 【发布时间】:2013-10-28 23:31:05 【问题描述】:

我正在尝试在我的 android 应用程序中读取 pdf 文件。我不想使用默认的 pdf 阅读器而只是打开一个新意图,因为我需要自己的 GUI,并且想使用第一页作为封面。因此,我需要制作自己的 pdf 阅读器。我做了一些研究,发现了 muPDF 和 Android PDF Viewer Library。

    我尝试按照教程来实现 Android PDF 查看器库,来自 github 描述。但问题是它永远加载pdf文件。除了描述中的步骤,我还需要做其他事情吗?

    我找不到 muPDF 库的任何教程,有吗?如何实现?

    如果前两个问题没有有用的答案,有没有好的 pdf 库有教程和好的文档?

谢谢你,希望我能解决我的问题

【问题讨论】:

【参考方案1】:

MuPDF 是一个非常好的库,你绝对可以使用它。如果您需要使用 MuPDF 的 Android 应用程序的完整示例,我建议您在Github 上查看这个可定制的杂志应用程序。

【讨论】:

这个项目看起来不错但是很复杂,有没有比这个更简单的。因为我真的只需要打开 PDF 活动并浏览 PDF 页面。我不需要任何高级动画、文本突出显示等。如果你没有更简单的例子,那么你能告诉我我需要从这个项目中实现什么来获得一个简单的 PDF 阅读应用程序吗? 在将项目(StartupActivity,main)导入eclipse,并将目标sdk更改为19,并将appcompact7作为库添加到StartupActivity后,我收到此错误:uupload.ir/files/04yu_1euntitled.png;;;;;你有任何sample.apk吗?我想看看这个完整的例子。谢谢。【参考方案2】:

首先,如果您想在现有的 android 应用程序项目中使用 MUPDF,您可以按照您在this link 找到的指南进行操作(所有学分归作者所有,我没有写这个)。

我也在尝试在我的应用程序中集成一个非常简单的 PDF 阅读/打印解决方案,并且我正在努力精简/简化按照该指南获得的 MuPdf 应用程序演示。我已经设法(以某种方式)删除了注释和文件选择功能,但我真的需要一些帮助才能完成所有工作。真的有很多东西,而且绝对没有关于这个的文档。我只是试图阅读代码并弄清楚需要什么和不需要什么,逐个删除功能并被您在 catlog 中遇到的错误所驱动。

此外,由于我们双方(如果我正确理解您的需求)只需要 PDF 渲染功能,如果有人指出如何(如果可能)在构建 MuPDF 库时禁用一些内置于 MuPDF 库中的不必要功能,那就太好了来自源代码(作为 DjVu 支持,仅作为示例)。

希望这会有所帮助,即使它不是您问题的真正答案。

【讨论】:

【参考方案3】:

这就是我使用 Cygwin、android-ndk 在 Windows 上成功构建 MuPDF 库的方式

    从https://code.google.com/p/mupdf/downloads/list 下载 MuPDF 1.3 源代码 解压到文件夹 c:/mupdf-1.3-source

    安装 Cygwin: 从http://cygwin.com/install.html 下载并运行运行 setup-x86.exe 安装 cygwin 时,请确保您选择了 make packages 和 C++ 编译器

    生成。打开cygwin终端,运行

    cd /cygdrive/
    cd c/mupdf-1.3-source
    make generate
    

    安装android-ndk: 下载android-ndk-r9d-windows-x86.zip并解压到

    c:/android-ndk-r9d
    

    构建 mupdf 库:在 windows cmd 控制台上:

    准备工作:

    cd c:/mupdf-1.3-source/platform/android
    copy local.properties.sample local.properties
    

    编辑local.properties,取消注释

    #sdk.dir=C:\\Program Files (x86)\\Android\\android-sdk
    

    改成

    sdk.dir=REAL andforid-sdk Folder
    

    构建: 在c:/mupdf-1.3-source/platform/android 上运行时,运行:

    /android-ndk-r9d/ndk-build
    

    构建完成后,会在下面创建一个名为 libs 的文件夹

    c:/mupdf-1.3-source/platform/android
    

    创建安卓 apk。 打开eclipse,从已有代码新建一个android项目,浏览到c:/mupdf-1.3-source/platform/android,现在就可以创建一个mupdf apk了。

【讨论】:

您能否将其作为教程发布在您的任何博客中以提供更多详细信息【参考方案4】:

从 Android 5.0 开始,您还可以使用 Android 的内部 PDF renderer,对于处理 PDF,您始终可以使用 iTextg - 只是未来的一些替代方案。

【讨论】:

【参考方案5】:

此 SO answer 列出了一些有关如何将 MuPDF Java 示例应用程序中的基本部分转换为自己的步骤的步骤。

我最好有一个“即用型”Java 库,我可以将其作为依赖项附加到其中。 JNI 是在阻止这种情况,还是只是没有人愿意这样做?

嗯,jmupdf 是存在的(在这个duplicate 中提到),但它列出了 Windows 和 Linux(不是特别是 Android)作为测试平台。对我来说,它似乎是桌面和死亡(12 个月内没有变化)。至少与 MuPDF 本身的vibrance 相比。

【讨论】:

以上是关于Android PDF Viewer Library 或 muPDF 库教程的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Android 中渲染 PDF 文件

Android 如何本地加载pdf文件

PDF查看:Android 用PDFView实现PDF查看器

ng2-pdf-viewer - 不显示自动 pdf

使用 ng2-pdf-viewer 时 ng-serve 出错

pdf xchange viewer 怎么用