我正在尝试使用 JavaFX 2 将应用程序的快照保存到磁盘,考虑到 FX 具有内置快照功能,这应该很容易。它确实有效,但是图像模糊。我正在构建的应用程序很大程度上依赖于使这些图像保存清晰。有谁知道为什么会发生这种情况?或者如何修复它以便保存我在应用程序运行时实际看到的内容?
顶部图像是保存到磁盘的图像,底部是我的应用程序正在运行:
我保存场景的代码如下:
try
{
WritableImage wi = new WritableImage((int) scene.getWidth(), (int) scene.getHeight());
WritableImage snapshot = scene.snapshot(wi);
File output = new File("Full.png");
ImageIO.write(SwingFXUtils.fromFXImage(snapshot, null), "png", output);
} catch (IOException ex) {
ex.printStackTrace();
}
最佳答案
看起来就像您在配备 Retina 显示屏的 Mac 上运行代码一样。如果是这样的话,答案就在这里: How to save a high DPI snapshot of a JavaFX Canvas
关于JavaFX 2 将场景的清晰快照保存到磁盘,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34194427/