相关疑难解决方法(0)

Android:在WebView中加载的图像中的像素质量降低

我正在为移动浏览器构建Javascript应用程序(不包装为原生应用程序).

我注意到,如果图像尺寸超过特定阈值(宽度超过1400像素左右),Android(经过测试的2.3模拟器和Galaxy S设备)会降低加载图像的质量.这使得无法加载大位图图像(2000 x 2000 px)而质量无法使用.

我测试了这个

  • 加载一个大图像并将其绘制在 - 我得到像素垃圾了.如果我使用lineTo()绘制网格线,它们具有完美的质量,那么坏的必须在图像像素数据中

  • 将大图像切成100 x 100个切片并将它们绘制到画布上 - 这是我发现的唯一方法,不会降低质量.但是,切片很麻烦,为预处理图像和页面加载时间增加了额外的步骤

  • 我测试了使用新的Image()对象,标签和CSS背景加载图像:所有东西都受到质量下降的影响,所以我怀疑问题是图像加载器本身

  • 我也用CSS图像渲染尝试了一切https://developer.mozilla.org/En/CSS/Image-rendering - 没有运气

  • 视口标记似乎对图像加载没有影响 - 当您尝试触摸加载的像素数据时,数据已经是垃圾.我尝试了Android SDK文档中建议的所有可能值http://developer.android.com/reference/android/webkit/WebView.html

还测试了Firefox移动,桌面浏览器,iOS:一切都很好.

那么,发生了什么 - Android WebView根本无法加载大图像?

(这里挂着Android机器人的笑脸)

html5 android canvas image webview

6
推荐指数
1
解决办法
3771
查看次数

标签 统计

android ×1

canvas ×1

html5 ×1

image ×1

webview ×1