我创建了一个Bitmap来捕获WebView内容。 当内容的大小很小时没有问题。 但是,当内容的大小很大时,创建位图时会出现内存不足错误。
这是我的代码。
float scale = webView.getScale();
int webViewHeight = (int)(webView.getContentHeight() * scale);
//************************************************************
// An error occurs here.
Bitmap image = Bitmap.createBitmap(webView.getWidth(), webViewHeight, Bitmap.Config.ARGB_8888);
Canvas canvas = new Canvas(image);
webView.draw(canvas);
try {
FileOutputStream out = new FileOutputStream(filePath);
image.compress(Bitmap.CompressFormat.JPEG, 100, out);
out.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
我应该使用什么方法来捕获大内容的Webview?
感谢您的帮助。
答案 0 :(得分:0)
尝试其他配置,例如Bitmap.Config.RGB_565。它会减小创建的位图的大小