Android Webview:屏幕太大的图像
Posted
技术标签:
【中文标题】Android Webview:屏幕太大的图像【英文标题】:Android Webview: Images that are too large for the screen 【发布时间】:2011-12-10 06:58:14 【问题描述】:我正在寻找一种方法让图像出现在最初适合屏幕的 WebView 中,而不是显示实际大小。有没有办法做到这一点?
如果:
1) 我打开一个带有图像的 img 标签的 html 文件
2)我直接打开图片文件
感谢您的帮助。
【问题讨论】:
我已经尝试过***.com/questions/3099344/…这里提出的解决方案,效果很好。 【参考方案1】:我最终使用了:
mWebView.getSettings().setLoadWithOverviewMode(true);
mWebView.getSettings().setUseWideViewPort(true);
使页面内容适合 WebView。
【讨论】:
这行得通,但我有文字,而不仅仅是图像,而且文字变得非常小。 可以帮助文本变得这么小吗?【参考方案2】:如果我理解这个问题,您的网页上有一个尺寸为 X x Y 的图像,当您将网页加载到 WebView 中时,您希望它占用 android 设备的尺寸 (X1 x Y1)。为此,将查询字符串传递给 url,它将图像的高度和宽度呈现为 100%。还要将 webview 的 layout_width 和 layout_height 设置为适当的值。
如果直接将图片加载到WebView中,可以设置图片的高宽
【讨论】:
【参考方案3】:您可以使用 Webview 的LayoutAlgorithm
。但这只会调整那些宽度大于设备宽度的图像。这对小于屏幕的图像没有帮助。
链接:Can Android's WebView automatically resize huge images?
另一种解决方案是使用javascript
或HTML Cleaner 等外部库来删除
<img>
大小属性,然后通过代码和getWidth()
更改它们的大小。
【讨论】:
以上是关于Android Webview:屏幕太大的图像的主要内容,如果未能解决你的问题,请参考以下文章
“画布:Android Studio中试图绘制太大的位图”问题
Android:WebView 中加载的图像中的像素质量降低
为啥 webView.setWebChromeClient(new WebChromeClient());导致屏幕变黑?