Как я могу программно сделать снимок экрана веб-просмотра, захватив всю страницу?

Я думаю, что заголовок в значительной степени соответствует этому, но у меня есть веб-просмотр. в моей деятельности. Я загрузил URL-адрес в веб-просмотр и хочу сделать снимок экрана всей страницы (все, что находится в области просмотра, а также то, что находится «ниже сгиба»).

Я есть код, который работает для снимка области просмотра, и я знаю, что это можно сделать в iOS, увеличив веб-просмотр перед его снимком Я пытался использовать ту же технику здесь:

    WebView browserView = (WebView) findViewById(R.id.browserView);

    //Resize the webview to the height of the webpage
    int pageHeight = browserView.getContentHeight();
    LayoutParams browserParams = browserView.getLayoutParams();
    browserView.setLayoutParams(new LinearLayout.LayoutParams(LayoutParams.FILL_PARENT, pageHeight));

    //Capture the webview as a bitmap
    browserView.setDrawingCacheEnabled(true);
    Bitmap bitmap = Bitmap.createBitmap(browserView.getDrawingCache());
    browserView.setDrawingCacheEnabled(false);

    //Create the filename to use
    String randomFilenamepart = String.valueOf(new SecureRandom().nextInt(1000000));
    String filename = Environment.getExternalStorageDirectory().toString() + "/Screenshot_" + randomFilenamepart + ".jpg";
    File imageFile = new File(filename);
    //Stream the file out to external storage as a JPEG
    OutputStream fout = null;
    try {
        fout = new FileOutputStream(imageFile);
        bitmap.compress(Bitmap.CompressFormat.JPEG, 100, fout);
        fout.flush();
        fout.close();
    } catch (FileNotFoundException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    } finally {
        browserView.setLayoutParams(browserParams);
    }

Но я все еще захватываю только область просмотра Не принимая во внимание такие вещи, как нехватка памяти из-за слишком большого размера страницы, кто-нибудь знает, что я делаю неправильно или как я могу включить часть за пределами области просмотра?

26
задан Rob Hruska 5 May 2012 в 15:46
поделиться