2011-10-09 17 views

答えて

13
web = new WebView(this); 

web.setPictureListener(new PictureListener(){ 

    public void onNewPicture(WebView view, Picture picture) { 
     if(picture != null) 
     { 
     try 
     { 
     Bitmap bmp = pictureDrawable2Bitmap(new PictureDrawable(picture)); 
     FileOutputStream out = new FileOutputStream(filename); 
     bmp.compress(Bitmap.CompressFormat.PNG, 90, out); 
     out.close(); 
     } 
     catch(Exception e) 
     { 
      e.printStackTrace(); 
     } 
     } 
}); 

web.setWebViewClient(new WebViewClient() { 
    public void onPageFinished(WebView webview, String url) { 
     Picture picture = webview.capturePicture(); 

    } 
}); 


web.getSettings().setJavaScriptEnabled(true); 

setContentView(web); 

ヘルパー関数

private static Bitmap pictureDrawable2Bitmap(PictureDrawable pictureDrawable){ 
     Bitmap bitmap = Bitmap.createBitmap(pictureDrawable.getIntrinsicWidth() 
     ,pictureDrawable.getIntrinsicHeight() 
     , Config.ARGB_8888); 
     Canvas canvas = new Canvas(bitmap); 
     canvas.drawPicture(pictureDrawable.getPicture()); 
     return bitmap; 
    } 

免責事項:私は実際にこれをコンパイルしていない

+0

はあなたに感謝しても、それが動作するはずですが...それを得た。..ウルに感謝@Reno – Prasanth

+0

答えは..ですが、ロリポップバージョンでは動作しません。あなたは答えを更新できますか? – user512

関連する問題