如何在android 5.0中将webview捕获到位图?

用户名

在这里,我对webview有一个快速的问题。

我的要求是捕获webview并将文件保存在sdcard中,以保存为我在以下代码中使用的文件。

下面的代码用于从webview生成位图

Webview到位图:

webview.measure(MeasureSpec.makeMeasureSpec(
               MeasureSpec.UNSPECIFIED, MeasureSpec.UNSPECIFIED),
               MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED));
       webview.layout(0, 0, webview.getMeasuredWidth(),
               webview.getMeasuredHeight());
       webview.setDrawingCacheEnabled(true);
       webview.buildDrawingCache();
      bitmap = Bitmap.createBitmap(webview.getMeasuredWidth(),
               webview.getMeasuredHeight(), Bitmap.Config.ARGB_8888);

       Canvas bigcanvas = new Canvas(bitmap);
       Paint paint = new Paint();
       int iHeight = bitmap.getHeight();
       bigcanvas.drawBitmap(bitmap, 0, iHeight, paint);
       webview.draw(bigcanvas);

    }
    catch (Exception e) 
    {
        e.printStackTrace();
    }

   webview.setDrawingCacheEnabled(false);

下面的代码用于将文件保存在内存中

要另存为文件:

 File myDir = new File(Environment.getExternalStorageDirectory(), "Sample");
    if (myDir.exists()) 
    {
    } 
    else 
    {
        myDir.mkdir();
    }
    String fname = "sample" + ".png";
    file1 = new File(myDir, fname);

   if(bitmap!=null)
   { 

    try 
    {
        FileOutputStream out = new FileOutputStream(file1);
        bitmap.compress(Bitmap.CompressFormat.PNG, 10, out);
        out.flush();
        out.close();
    } 
    catch (Exception e) 
    {
        e.printStackTrace();
    }}

但是这里的webview可以很好地加载但不能完全在android 5.0(lollipop)中捕获,如下图所示

在此处输入图片说明

我该如何解决这个问题?请给我建议或一些代码片段。

提前致谢..

用户名

创建任何WebView之前,您需要调用WebView.enableSlowWholeDocumentDraw()。也就是说,如果布局中有任何WebView,请确保先调用此方法,然后在如下所示的onCreate()中调用setContentView()。

if (Build.VERSION.SDK_INT >= 21) {
        webview.enableSlowWholeDocumentDraw ();
}

对我来说很好

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在android 5.0中将webview捕获到位图?

来自分类Dev

如何在Android Webview中捕获html5画布?

来自分类Dev

如何在Android 5中将ImageView放在Button的前面?

来自分类Dev

如何在Laravel 5中捕获ReflectionException?

来自分类Dev

如何在Laravel 5中捕获ReflectionException?

来自分类Dev

如何在Android中结合叠加位图和捕获的图像?

来自分类Dev

如何在JNI Android导入的类中将事件方法实现为XE5

来自分类Dev

如何在 3-5 秒后将数据从 android 发送到服务器?

来自分类Dev

如何在厨房运行中将厨师客户日志输出捕获到文件中?

来自分类Dev

如何在Dart中将stdin(多行)捕获到字符串中?

来自分类Dev

如何在厨房运行中将厨师客户日志输出捕获到文件中?

来自分类Dev

如何在Delphi XE5中调用原生Android构造函数?

来自分类Dev

如何在Delphi-XE5 Firemonkey应用程序中关闭android应用程序?

来自分类Dev

如何在Android中每5秒更新进度对话框文本?

来自分类Dev

如何在Android中获得准确至5微秒的后续时间戳

来自分类Dev

如何在HTML5应用中检测Android移动模型

来自分类Dev

如何在Android / Java中获取文件目录的MD5校验和

来自分类Dev

如何在Android中每5秒更新进度对话框文本?

来自分类Dev

如何在MVC 5(Visual Studio 2013)中创建Android应用程序?

来自分类Dev

如何在Android中通过5个小门获得像团队胜利这样的json数据

来自分类Dev

Android:如何在变量中添加 5 次并获得它们的总秒数

来自分类Dev

如何在Laravel 5中捕获异常/缺少页面?

来自分类Dev

如何在Android Webview中按ID捕获元素点击?

来自分类Dev

如何在Xcode 5中将新项目添加到源代码管理中?

来自分类Dev

如何在PyQt5中将文件拖放到QTableWidget中

来自分类Dev

如何在Xcode 5中将新项目添加到源代码管理中?

来自分类Dev

如何在Extjs 5中将图表导入为PDF文件中的图像?

来自分类Dev

如何在CKEditor5中将图像插入表格中?

来自分类Dev

如何将“代码”值捕获到变量中?

Related 相关文章

  1. 1

    如何在android 5.0中将webview捕获到位图?

  2. 2

    如何在Android Webview中捕获html5画布?

  3. 3

    如何在Android 5中将ImageView放在Button的前面?

  4. 4

    如何在Laravel 5中捕获ReflectionException?

  5. 5

    如何在Laravel 5中捕获ReflectionException?

  6. 6

    如何在Android中结合叠加位图和捕获的图像?

  7. 7

    如何在JNI Android导入的类中将事件方法实现为XE5

  8. 8

    如何在 3-5 秒后将数据从 android 发送到服务器?

  9. 9

    如何在厨房运行中将厨师客户日志输出捕获到文件中?

  10. 10

    如何在Dart中将stdin(多行)捕获到字符串中?

  11. 11

    如何在厨房运行中将厨师客户日志输出捕获到文件中?

  12. 12

    如何在Delphi XE5中调用原生Android构造函数?

  13. 13

    如何在Delphi-XE5 Firemonkey应用程序中关闭android应用程序?

  14. 14

    如何在Android中每5秒更新进度对话框文本?

  15. 15

    如何在Android中获得准确至5微秒的后续时间戳

  16. 16

    如何在HTML5应用中检测Android移动模型

  17. 17

    如何在Android / Java中获取文件目录的MD5校验和

  18. 18

    如何在Android中每5秒更新进度对话框文本?

  19. 19

    如何在MVC 5(Visual Studio 2013)中创建Android应用程序?

  20. 20

    如何在Android中通过5个小门获得像团队胜利这样的json数据

  21. 21

    Android:如何在变量中添加 5 次并获得它们的总秒数

  22. 22

    如何在Laravel 5中捕获异常/缺少页面?

  23. 23

    如何在Android Webview中按ID捕获元素点击?

  24. 24

    如何在Xcode 5中将新项目添加到源代码管理中?

  25. 25

    如何在PyQt5中将文件拖放到QTableWidget中

  26. 26

    如何在Xcode 5中将新项目添加到源代码管理中?

  27. 27

    如何在Extjs 5中将图表导入为PDF文件中的图像?

  28. 28

    如何在CKEditor5中将图像插入表格中?

  29. 29

    如何将“代码”值捕获到变量中?

热门标签

归档