首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何使用JXBrowser捕获特定元素的屏幕截图而不是整个页面?

如何使用JXBrowser捕获特定元素的屏幕截图而不是整个页面?
EN

Stack Overflow用户
提问于 2021-09-24 07:56:57
回答 1查看 108关注 0票数 1

我想要的只是捕获页面的一部分,或者仅仅是基于ID或任何特定元素定位器的特定元素。(例如,我希望捕捉带有图像id =“徽标”的图片)

是否有任何方法可以通过选定的项目或元素捕获屏幕截图?

代码语言:javascript
运行
复制
            Browser browser = new Browser();
            BrowserView view = new BrowserView(browser);
            JFrame frame = new JFrame();
            frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
            frame.add(view, BorderLayout.CENTER);
            frame.setSize(700, 500);
            frame.setLocationRelativeTo(null);
            frame.setVisible(true);
            browser.loadURL("https://cafemmo.club/");
            TimeUnit.SECONDS.sleep(10);

browser.getDocument().findElement(By.cssSelector("#logo"));
EN

Stack Overflow用户

发布于 2021-12-12 19:58:04

没有API可以在一次调用中执行此操作。但是,以下方法应该有效:

  1. 拍摄整个页面的快照。这里描述了这一点:https://jxbrowser-support.teamdev.com/docs/6/guides/content.html#saving-web-page-to-png

  1. 获得页面内元素的边界,并手动将该区域从元素中删除。下面是如何获得边界:https://jxbrowser-support.teamdev.com/docs/6/guides/dom.html#getting-element-bounds

如果您使用的是JxBrowser 7,他们已经引入了API来获取<img>标记中图像的原始字节:https://jxbrowser-support.teamdev.com/javadoc/7.21/com/teamdev/jxbrowser/dom/ImageElement.html#contents--

票数 0
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69311500

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档