我想在不使用内置应用程序或查看器的情况下在 Android 中渲染/打开 PDF 文件(存储在 SDCard 中)。
1) 我们尝试过 MuPDF 开源库,但使用该库进行渲染非常慢。
2)我们可以使用iText 库在Android 中渲染PDF 文件(即iText 作为PDF 查看器)。
是否有任何其他可在 Android 中使用的 PDF 库(开源)或建议为 Android 开发 PDF 查看器的基本指南。
我想在不使用内置应用程序或查看器的情况下在 Android 中渲染/打开 PDF 文件(存储在 SDCard 中)。
1) 我们尝试过 MuPDF 开源库,但使用该库进行渲染非常慢。
2)我们可以使用iText 库在Android 中渲染PDF 文件(即iText 作为PDF 查看器)。
是否有任何其他可在 Android 中使用的 PDF 库(开源)或建议为 Android 开发 PDF 查看器的基本指南。
1)MuPDF 可以很好地在 android 中渲染教科书 pdf,而渲染带有大图像的 pdf 可能会很慢。如果您希望 MuPDF 在 android 平台上快速稳定地运行,则需要进行大量自定义和改进,尤其是内存使用控制。您可以查看两个基于 MuPDF 的开源项目 VuDroid 和apv 。
2)这取决于您的要求。iText 可能足以呈现简单的文本 pdf,但我认为它的性能并不比 MuPDF 或其他使用 C/C++ 开发的库更好。
另一种选择是使用Poppler。一个成功的案例是流行的安卓应用 ezPDF Reader 基于 Poppler,尽管它违反了 GPL 许可。开箱即用的 Poppler 需要比 MuPDF 更多的工作才能在 android 上顺利运行。可以参考开源项目apdfviewer。
我最近在这个领域做了一些研究,我在 Android 上尝试了超过 14 个库,我对一些高分辨率的可打印 PDF 杂志进行了简单的基准测试,我目前正在考虑在工作中使用 MuPDF 或 Radaee因为他们是最好的。
我也尝试过 VuDroid 和 apv,但它们非常不稳定,它们经常在复杂的 PDF 文档上崩溃,并且与 MuPDF 或 Radaee 相比非常慢。
由于 MuPDF 和 Radaee(以及其他一些库)是用纯 C 编写的,并通过 NDK 在 Android 上使用,因此它们提供了最佳性能(并且它们都是为商业用途付费)。
在 anddev 上查看我的 Android 版 PDF 阅读器。我记得它使用修改后的 PDFBox(没有与编辑相关的东西),并具有我自己的字体转换器(将字体提供给 Android 并更快地呈现它们)。
我不再开发 PDF 阅读器,我可以将所有更改都开源(尽管这需要一些工作和时间)。你可以试一试,看看它对你的表现如何。注意:阅读器不支持加密和复制保护。