栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

从不可见的AWT组件创建图像?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

从不可见的AWT组件创建图像?

很好的问题,我自己不时考虑这个问题!


正如您已经写过的,将重量级组件(例如3D和AWT)放到图像上是一个大问题。这些组件(几乎)被 直接转移到图形卡上,
因此不能使用常规的

paintComponent
东西将它们重新渲染为图像,您需要操作系统的帮助或自行绘制这些组件。


1.制作自己的图像渲染器

对于没有to图像渲染方法的每个组件,您需要创建自己的组件。例如,使用jogl可以使用此方法进行屏幕外截图(SOpost)。


2.渲染到虚拟屏幕上

先决条件:

  1. 您可以在无头的环境中启动程序/组件吗?
  2. 您在使用Linux吗?

然后,您可以使用Xvfb将整个程序呈现到虚拟屏幕上,然后从该虚拟屏幕上截取屏幕截图,如下所示:

Xvfb :1 &DISPLAY=:1 java YourMainClassxwd -display :1 -root -out image.xwd

也许您需要通过将要渲染的程序的大小传递给Xvfb来进行一些操作(

-screen 0 1024x768x24
)。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/469998.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号