JavaFX 2中的bloom效果受到剪裁的影响,剪裁会剪切效果本身的一部分。有没有一种方法可以避免这种裁剪或者扩展要保留的区域?
示例FXML (只需使用场景生成器打开),它演示了剪切的bloom效果:
<?xml version="1.0" encoding="UTF-8"?>
<?import javafx.scene.effect.*?>
<?import javafx.scene.layout.*?>
<?import javafx.scene.shape.*?>
<StackPane xmlns:fx="http://javafx.com/fxml">
<children>
<Rectangle fill="#808080" height="90.0" width="90.0" />
<Circle fill="WHITE" radius="35">
<effect><Bloom /></effect>
</Circle>
</children>
</StackPane>

发布于 2012-11-16 09:06:05
这似乎是一个bug,因为像dropshadow这样的效果不会遭受相同的裁剪。我鼓励您将错误提交到http://javafx-jira.kenai.com的运行时项目。
解决方法是在圆上设置透明描边。
<?xml version="1.0" encoding="UTF-8"?>
<?import java.lang.*?>
<?import javafx.scene.effect.*?>
<?import javafx.scene.layout.*?>
<?import javafx.scene.shape.*?>
<StackPane xmlns:fx="http://javafx.com/fxml">
<children>
<Rectangle fill="GREY" height="90.0" width="90.0" />
<Circle fill="WHITE" radius="35.0" stroke="TRANSPARENT" strokeType="OUTSIDE" strokeWidth="10.0">
<effect>
<Bloom />
</effect>
</Circle>
</children>
</StackPane>

https://stackoverflow.com/questions/13388766
复制相似问题