JavaFX webengine.executeScript作为第一行代码,在代码末尾运行

时间:2014-07-03 08:22:51

标签: java javascript webview javafx javafx-webengine

我需要拍一张很长的页面的快照。我想拍多张截图并将它们放在一起。移动视图我使用javascript进行滚动。

这些功能:

private ArrayList<BufferedImage> takeSnapshots (int numRows, int numCols){
     ArrayList<BufferedImage> snapshotsList = new ArrayList ();
    for (int i=0; i<numRows; i++){
        for (int j=0; j<numCols; j++){
            forward ((BASE_WIDTH*j), (BASE_HEIGHT*i));
            WritableImage snapshot = webView.snapshot(null, null);
            snapshotsList .add (SwingFXUtils.fromFXImage(snapshot , null));
        }
    }
    return snapshotsList ;
}

private void  forward (int widht, int height ){
    webEngine.setJavaScriptEnabled(true);
    webEngine.executeScript("window.scrollTo(" + widht+ ", " + height + ")");
}

此代码返回第一个块的屏幕截图列表,最后滚动。有什么想法要修复吗?

0 个答案:

没有答案