今天,我遇到了一个奇怪的问题:java.awt.Robot
捕获黑色区域,而不是图像内容。我正在使用 Ubuntu 12.04 和 OpenJDK6/7。
java.awt.Robot
在 Unix 上由 支持sun.awt.X11.XRobotPeer
,它遵循相应的 OpenJDK 源,使用类似于xwd
utililty 使用的图像抓取功能(第 92-162 行)。
所以,我运行了以下命令:
xwd -root -out test.screen.root.xwd
然后用 gimp 打开这个文件。这是我得到的:
然后我尝试了:
xwd -root | xwdtopnm | pnmtopng > Screenshot.root.png
我得到以下结果:控制台输出:
xwdtopnm: writing PPM file
libpng warning: Invalid sBIT depth specified
和图像本身:
什么会导致这种情况?我该如何解决?