0

我有一个要嵌入到我的网页中的第三方 Java 小程序,但我无权访问小程序代码。

但我想在我的页面上创建一个单击按钮,该按钮将创建小程序的屏幕截图(但不是整个屏幕)。我尝试使用 Robot 类,但这会占用我不想要的整个屏幕

BufferedImage screencapture = new Robot().createScreenCapture(
    new Rectangle(Toolkit.getDefaultToolkit().getScreenSize()) );

我在网上查看并找到了代码,但那些需要访问我没有的小程序。

是否可以使用java来做到这一点?如果是这样,怎么做?

4

1 回答 1

1

我看到至少有两个选择。

第二个小程序

  • 使用第二个小程序获取对小程序的引用,使用AppletContext.getApplet(name).
  • Applet.getLocationOnScreen()坐标。
  • 这是您的页面,因此除非使用百分比设置小程序大小,否则您知道要捕获的宽度 x 高度。
  • 使用套接字连接到桌面/CLI 应用程序。截屏,或使用小程序截屏。无论哪种方式,都需要applet 是可信的。

扩展小程序

扩展原始小程序并添加一个新方法来返回或导出当前小程序表面的图像。有关示例,请参见ComponentImageCapture.java 。

导出图像的选项:

  • 使用JWS部署小程序- 使用 JNLP 文件 API 将图像导出到本地文件系统。
  • JFileChooser使用更常见的/对小程序进行数字签名,将图像导出到本地文件系统File
  • 将其传递回主机站点,这可以通过沙盒小程序完成。
于 2012-06-02T16:59:45.577 回答