0

我在 Adob​​e XD 中对我的应用程序的一部分进行了原型设计桌面渲染

现在是时候在 Java 中重新创建磨砂玻璃效果了。但是,我能得到的最接近的是以下在此处输入图像描述

眼尖的你可能会看到……它看起来很糟糕,完全不像我的设计。

我通过截取屏幕相关部分的屏幕截图并对图像应用高斯模糊来实现以下外观。我不知道如何实现上述外观,因此将不胜感激。到目前为止,您可以在下面看到我的代码

Robot robot = new Robot();

Toolkit myToolkit = Toolkit.getDefaultToolkit();
Dimension screenSize = myToolkit.getScreenSize();

Rectangle screen = new Rectangle(screenSize);

BufferedImage screenBlurImage = robot.createScreenCapture(screen);
//get relevant section
screenBlurImage = screenBlurImage.getSubimage(457,415,1006,107);
//set image
image.setImage(screenBlurImage);
//Apply blur
BoxBlur bb = new BoxBlur();
bb.setWidth(5);
bb.setHeight(5);
bb.setIterations(3);

image.setImage(SwingFXUtils.toFXImage(screenBlurImage, null ));

image.setEffect(bb);
4

1 回答 1

1

我最终将 Adob​​e XD 设计导出为 HTML 网页并使用具有透明背景的 JavaFX Webview 呈现它,结果证明 Adob​​e XD 模糊背景的方式是使用以下 CSS 选项:

box-shadow: inset 0 0 0 200px rgba(0, 0, 0, 0.5);
filter: blur(13px);
于 2019-11-11T12:54:52.473 回答