我在 Adobe XD 中制作了部分应用程序的原型(prototype)
现在是时候在 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);
最佳答案
我最终将 Adobe XD 设计导出为 HTML 网页,并使用具有透明背景的 JavaFX Webview 对其进行渲染,事实证明 Adobe XD 模糊背景的方式是使用以下 CSS 选项:
box-shadow: inset 0 0 0 200px rgba(0, 0, 0, 0.5);
filter: blur(13px);
关于java - 使用 Java 创建 Adobe XD 背景模糊效果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58769157/