【问题标题】:how to fetch quality images from pdf using mupdf library in android如何使用 android 中的 mupdf 库从 pdf 中获取高质量图像
【发布时间】:2016-08-06 19:20:36
【问题描述】:
其实我是使用 mupdf 库来获取图片的
drawPage(位图, pdfwidth, pdfHeight,x,y, imageWidth, imageHeight);
但是图像的质量没有达到标准,所以我增加了 imageHeight 和 imageWidth 然后我得到了高质量的图像但是图像占用了太多的内存,所以我得到了内存不足的异常。
任何人都可以建议哪种方法是解决此问题的最佳方法。
获得高质量图像后是否需要平铺?或者我可以做些什么来获得更少内存的高质量图像吗?
或任何其他最好的方法来做到这一点?
提前致谢。
【问题讨论】:
标签:
java
android
image
pdf
mupdf
【解决方案1】:
您正在处理未压缩的图像,因此内存使用量与宽度乘以高度直接相关。您无法做任何事情来减少内存使用量,同时保持高分辨率而不降低颜色深度,我怀疑您不想这样做。
因此,解决方案是拼贴(或者,根据您要完成的工作,带 - 带将是打印或导出为 png 的更正常的解决方案)。
您可以在 java 级别处理乐队。或者,如果您尝试导出为 png 或类似格式,您可以在 mupdf 代码库中基于 source/tools/mudraw.c 在 C 级别编写代码,该代码使用带来降低内存使用量(也可以使用多线程以提高具有多个 CPU 内核的设备的速度)。
如果不知道您要达到的目标,很难说哪种解决方案最好。如果您不熟悉 C 和 JNI,您可能最好使用 java 解决方案。