Создание растрового изображения из содержимого WebView в Android - PullRequest
0 голосов
/ 26 августа 2018

Я пытался найти лучшее решение для создания растрового изображения из содержимого WebView, но не могу найти подход. Я попробовал следовать этому решению , и оно работает, однако некоторые методы устарели, например webView.setDrawingCacheEnabled(true) и webView.buildDrawingCache(). Есть ли лучшее решение для его достижения?

Мой второй подход - использовать webView.draw(canvas), как показано ниже, но он не сохраняет всю страницу Содержимое WebView .

web.measure(View.MeasureSpec.makeMeasureSpec(
        View.MeasureSpec.UNSPECIFIED, View.MeasureSpec.UNSPECIFIED),
        View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED));
web.layout(0, 0, web.measuredWidth,
        web.measuredHeight)


val bitmap = Bitmap.createBitmap(web.measuredWidth, web.measuredHeight, Bitmap.Config.ARGB_8888)
val canvas = Canvas(bitmap)
web.draw(canvas)

1 Ответ

0 голосов
/ 17 октября 2018

Вы должны установить WebView.enableSlowWholeDocumentDraw(); перед тем, как раздувать свое веб-представление, чтобы получить полное веб-представление для отображения на растровом изображении.Это для SDK версии> = 21.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...