2013-01-04 203 views
1

我有一個顯示花哨條形圖的網頁視圖。我需要基本上截取它(整個HTML文檔,不只是在webview控件中可見的區域)並將其填充到PDF中。 HTML文件由我的應用程序生成,所以我可以添加任何我想要的。使用PDF也不是問題。打印WebView的內容

問題是我該如何去抓取呈現的HTML文檔作爲位圖?高層次方法的想法會有所幫助。

注意,HTML圖形與DHTML,而不是畫布上完成,這樣的解決方案描述here不適

+1

如果對這個問題的第二個答案 - 使用'capturePicture()' - 不適用,那麼你在設備AFAIK上做任何事情都是不好的。 – CommonsWare

回答

0

如果你可以使用流,用於生成PDF開始對生成的圖像的路徑是:

Picture picture = webView.capturePicture(); 
Bitmap b = Bitmap.createBitmap(picture.getWidth(), picture.getHeight(), 
           Bitmap.Config.ARGB_8888); 

Canvas c = new Canvas(b);   
picture.draw(c); 

FileOutputStream out = null; 
byte[] byteArchadeImage = null; 

try { 
    out = new FileOutputStream(new File("/sdcard/snapshot/view-cutted.jpg")); 

    if (out != null) { 
     b.compress(Bitmap.CompressFormat.JPEG, 100, out); 
     out.flush(); 
     out.close(); 
    } 
} catch(Exception e) { 
    Log.e("MSG", e.getLocalizedMessage());  
}   

您可以使用任何工具重定向pdf生成流,以便在android上運行pdf生成工具。我相信iText就是一個例子。