【发布时间】:2011-02-28 11:32:31
【问题描述】:
我的应用程序需要以无损格式保存大图像。我愿意牺牲一些磁盘空间来加快保存速度,我更愿意以某种标准化格式保存,而不是自己滚动。
我发现内置的 .PNG 编码器对于我的需要来说相当慢,有时需要大约 5 秒来保存 1000x1000 的图像。我发现通过将原始像素值保存到磁盘(即不压缩)并保存使用 Java 的 deflate 类压缩的原始像素值并调整压缩设置,我可以更快地保存图像。不幸的是,据我所知,没有更改 Android 的 PNG 压缩级别的选项。
我有什么选择?
我已准备好使用 NDK,但我对使用尚未在 Android 上经过良好测试的外部库持谨慎态度。例如,libtiff 将是一个候选对象,但我找不到任何关于在 NDK 中使其工作以及它有多稳定的信息。
【问题讨论】:
-
不知道Android能不能做到,但应该可以不压缩存储PNG文件。这可能会满足您的要求。
-
PNG 文件写入 API 非常小。据我所知,它没有压缩设置。
标签: java android image-processing android-ndk