簡體   English   中英

從Android中的WebView內容創建位圖

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM