[英]Create Bitmap from WebView content in Android
我試圖找到一種更好的解決方案,用於從WebView內容創建位圖,但是找不到方法。 我確實嘗試按照此解決方案進行操作 ,但它確實有效,但是不贊成使用某些方法,例如webView.setDrawingCacheEnabled(true)
和webView.buildDrawingCache()
。 有沒有更好的解決方案來實現呢?
我的第二種方法是使用如下所示的webView.draw(canvas)
,但它不會保存整個頁面WebView Content 。
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)
您必須設置WebView.enableSlowWholeDocumentDraw();
在對Web視圖進行充氣以使整個Web視圖繪制為位圖之前。 這適用於SDK版本> = 21。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.