【发布时间】:2015-11-23 06:53:29
【问题描述】:
我正在使用PdfRendererabove api 21 在我的应用程序中显示 pdf,我注意到页面的质量很差。
我还按照谷歌示例使用PdfRenderer,这就是我为页面创建Bitmap的方式:
//mCurrentPage is a PdfRenderer.Page and mImageView is an ImageView
Bitmap bitmap = Bitmap.createBitmap(mCurrentPage.getWidth(),
mCurrentPage.getHeight(),
Bitmap.Config.ARGB_8888);
mCurrentPage.render(bitmap, null, null, PdfRenderer.Page.RENDER_MODE_FOR_DISPLAY);
mImageView.setImageBitmap(bitmap);
我使用了ARGB_8888,因为据我所知,它是显示位图的最佳质量。
我是不是做错了什么?
编辑
这是 PdfRenderer 类和经典 Pdf 阅读器之间的巨大差异:
【问题讨论】:
-
放大/缩小或切换焦点/焦点后,pdf的质量会改变吗?
-
@Sipty 不,它没有。
-
课堂上的局限真可怕!我建议应用 AA 以及其他一些方法来提高位图的质量。如果这不起作用,那么下一个最佳步骤可能是让您选择外部库。我的猜测是 Android 人员没有使用亚像素渲染和/或特定字体的问题。那里有一些很棒的库,可以为您提供大量额外有用的选项。
-
@Sipty 我实际上在使用 api 21 以下的外部库。但是,关于 Android sdk 在 api 21 以上提供此类的事实,我已经尝试实现它
-
@Sipty github.com/JoanZapata/android-pdfview 但截图来自 Adobe Reader
标签: android pdf bitmap pdfrenderer