问题描述
我有一个很大的html文件,因为我想对某些文本何时可见进行一些逻辑处理。
使用JEditorPane在 Swing 上,可以像这样获取加载的HTML的可见文本
contentScrollBar.getVerticalScrollBar().addAdjustmentListener(adjustmentEvent -> {
JViewport jViewport = contentScrollBar.getViewport();
Dimension size = jViewport.getExtentSize();
Point startPoint = jViewport.getViewPosition();
int start = contentEditorPane.viewToModel(startPoint);
Point endPoint = new Point(startPoint.x + size.width,startPoint.y + size.height);
int end = contentEditorPane.viewToModel(endPoint);
if (contentEditorPane.getText() != null && start != -1 && end != 1) {
try {
String text = contentEditorPane.getText(start,end - start);
if (text != null && text.split(System.lineseparator()).length > 0) {
List<String> nonEmptylines = Arrays.stream(text.split(System.lineseparator())).filter(x -> !x.trim().equals("")).collect(Collectors.toList());
//Do logic
}
} catch (BadLocationException e) {
e.printstacktrace();
}
}
});
我想在 JavaFx 上尝试相同的解决方案,我正在使用WebView加载本地html,但是我似乎找不到等效的方法。我尝试过
WebView.getEngine().executeScript("document.documentElement.outerHtml")
但这会从非常大的文件中返回所有html,而我只想获取可见的Text或Html,有什么办法吗?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)