【问题标题】:Print content of a WebView打印 WebView 的内容
【发布时间】:2014-12-31 09:17:07
【问题描述】:

我有一个显示精美条形图的 Web 视图。我基本上需要对其进行截图(整个 HTML 文档,而不仅仅是 webview 控件中当前可见的区域)并将其填充到 PDF 中。 HTML 文件由我的应用程序生成,因此我可以添加任何我想要的内容。使用 PDF 也不是问题。

问题是如何将呈现的 HTML 文档作为位图抓取?有关高级方法的想法会有所帮助。

请注意,HTML 图形是使用 DHTML 而不是画布完成的,因此here 描述的解决方案不适用

【问题讨论】:

  • 如果该问题的第二个答案——使用capturePicture()——不适用,那么你在设备上做任何事情都不走运,AFAIK。

标签: android


【解决方案1】:

如果您可以使用流生成 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());    
}          

您可以使用任何在 android 上生成 pdf 的工具来重定向流以生成 pdf。我相信 iText 就是其中的一个示例。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-05-22
    • 1970-01-01
    • 1970-01-01
    • 2018-07-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多