安卓PDF查看器库或muPDF库教程

7
我试图在我的Android应用程序中阅读pdf文件。我不想使用默认的pdf阅读器并简单地打开一个新的意图,因为我需要自己的GUI,并希望使用第一页作为封面。因此,我需要制作自己的pdf阅读器。我进行了一些研究,发现了muPDF和 Android PDF Viewer Library
  1. 我尝试按照github描述中的教程实现Android PDF Viewer Library,但问题是它无限加载pdf文件。除了描述中的步骤之外,我需要做其他事情吗?
  2. 我找不到关于muPDF库的任何教程,有吗?如何实现它?
  3. 如果前两个问题没有有用的答案,那么是否有好的pdf库可用于教程和文档?
谢谢,希望我能解决我的问题。
5个回答

7

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


6
这个项目看起来很不错但也很复杂,你是否有比这更简单的东西呢?因为我只需要打开PDF文件并浏览PDF页面。我不需要任何高级动画效果、文本高亮等。如果你没有更简单的例子,那么你能否告诉我从这个项目中需要实现哪些内容来制作一个简单的PDF阅读应用程序呢? - dmacan23
将项目(StartupActivity, main)导入到Eclipse后,将目标SDK更改为19,并将appcompact7作为库添加到StartupActivity中,我得到了这些错误:http://uupload.ir/files/04yu_1euntitled.png;你有sample.apk吗?我想看一下完整的示例。谢谢。 - Dr.jacky

7
首先,如果您想在现有的Android应用程序项目中使用MUPDF,则可以按照此链接中找到的指南进行操作(所有功劳归作者所有,我没有编写此内容)。
我也在尝试将一个非常简单的PDF阅读/打印解决方案集成到我的应用程序中,并且正在努力简化通过遵循该指南获得的MuPdf应用程序演示。我已经设法(某种程度上)删除了注释和文件选择功能,但我确实需要一些帮助来完成所有工作。这里真的有很多东西,而且没有任何文档。我只是试图阅读代码并弄清楚需要什么和不需要什么,逐个删除功能并根据catlog中出现的错误进行调整。
另外,由于我们两个(如果我正确理解您的需求)都只需要PDF渲染功能,因此如果有人指出如何(如果可能的话)在从源代码构建MuPDF库时禁用一些不必要的功能(例如DjVu支持),那就太好了。
希望这可以帮助您,即使它不是对您问题的真正答案。

6
这是我在Windows上使用Cygwin和Android NDK构建MuPDF库的成功经验。
  1. Download MuPDF 1.3 Source from https://code.google.com/p/mupdf/downloads/list unzip to folder c:/mupdf-1.3-source

  2. Install Cygwin: Download and run Run setup-x86.exe from http://cygwin.com/install.html when installing cygwin, make sure you selected make packages and C++ compilers

  3. Make generate. open cygwin terminal, run

    cd /cygdrive/
    cd c/mupdf-1.3-source
    make generate
    
  4. Install android-ndk: download android-ndk-r9d-windows-x86.zip and unzip it to

    c:/android-ndk-r9d
    
  5. Build mupdf lib: on windows cmd console:

    • preparation:

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

      edit local.properties, uncomment

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

      and change to

      sdk.dir=REAL andforid-sdk Folder
      
    • build: while still on c:/mupdf-1.3-source/platform/android, run:

      /android-ndk-r9d/ndk-build
      

      Upon the completion of the build, a folder named libs will be created under

      c:/mupdf-1.3-source/platform/android
      
  6. Create android apk. Open eclipse, create a new android project from existing code, browse to c:/mupdf-1.3-source/platform/android, now you can create a mupdf apk.


你能否在你的博客中详细介绍一下这个内容,作为一个教程呢? - Qadir Hussain

3
从Android 5.0开始,您还可以使用Android内部的PDF渲染器,而且您始终可以使用iTextg来处理PDF - 这只是未来的一些替代方案。

0

这个SO 答案 列出了一些步骤,教你如何从MuPDF Java示例应用中提取必要的部分到自己的项目中。

最好是有一个“可直接使用”的Java库,可以作为依赖附加到项目中。是JNI阻止了这一点,还是只是没有人去做呢?

嗯,jmupdf 是存在的(在这个重复中提到),但它列出的测试平台是Windows和Linux(并非专门针对Android)。对我来说,它似乎是桌面端且已经停滞不前了(12个月内没有任何变化)。至少与MuPDF本身的活力相比。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接