WebView с использованием Chart.js не может преобразовать в растровое изображениеAndroid

Форум для тех, кто программирует под Android
Anonymous
WebView с использованием Chart.js не может преобразовать в растровое изображение

Сообщение Anonymous »

Я работаю над приложением, в котором, помимо прочего, есть раздел новостей, где каждое новое событие представляет собой веб-просмотр, и вы можете делиться ими по намерению в своих социальных сетях.
Вот как я создаю растровое изображение из WebView, оно работает в большинстве случаев, но если WebView использует библиотеку Chart.js, оно работает только на некоторых устройствах, на остальных
сама диаграмма совершенно пусто (другие представления HTML, например тексты, в порядке). Если WebView не использует библиотеку Chart.js, он работает на любом устройстве.

Код: Выделить всё

binding.wvContent.measure(View.MeasureSpec.UNSPECIFIED, View.MeasureSpec.UNSPECIFIED)
val contentBitmap = getBitmapFromView(binding.wvContent)

private fun getBitmapFromView(view: View): Bitmap? {
val result = Bitmap.createBitmap(
view.measuredWidth,
view.measuredHeight,
Bitmap.Config.ARGB_8888
)
val canvas = Canvas(result)
view.layout(view.left, view.top, view.right, view.bottom)
view.draw(canvas)
return result
}
У меня есть строка android:hardwareAccelerated="true" в манифесте Android и WebView.enableSlowWholeDocumentDraw() в инициализации приложения, а также привязка .wvContent.settings.javaScriptEnabled = true
перед загрузкой URL-адреса.
Спасибо!
Маурисио

Подробнее здесь: https://stackoverflow.com/questions/689 ... -to-bitmap

Вернуться в «Android»