Android webview 如何截图
时间: 2023-10-13 11:19:25 浏览: 95
Android WebView 提供了一个 `capturePicture()` 方法来获取 WebView 的内容,可以用于截图。
以下是使用 `capturePicture()` 方法进行 WebView 截图的示例代码:
```java
// 获取 WebView 的 Picture 对象
Picture picture = webView.capturePicture();
// 创建 Bitmap 对象并绘制 WebView 的内容
Bitmap bitmap = Bitmap.createBitmap(picture.getWidth(), picture.getHeight(), Bitmap.Config.ARGB_8888);
Canvas canvas = new Canvas(bitmap);
picture.draw(canvas);
// 保存 Bitmap 到文件
File file = new File(Environment.getExternalStorageDirectory(), "webview_screenshot.jpg");
try {
FileOutputStream fos = new FileOutputStream(file);
bitmap.compress(Bitmap.CompressFormat.JPEG, 100, fos);
fos.close();
} catch (Exception e) {
e.printStackTrace();
}
```
上述代码会将 WebView 的内容绘制到一个 Bitmap 对象中,并保存到文件中。需要注意的是,由于 Android 版本的差异性,有时可能需要在 `onPageFinished()` 回调中执行截图的操作才能获取到完整的 WebView 内容。
阅读全文