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
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

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