3

JavaFX 2 中的bloom 效果受到裁剪的影响,裁剪了效果本身的一部分。有没有办法避免这种剪辑或扩展将被保留的区域?

示例 FXML(只需使用 Scene Builder 打开),演示了裁剪的绽放效果:

<?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>

剪花

4

1 回答 1

2

这似乎是一个错误,因为像 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>

布卢洛克

于 2012-11-16T01:06:05.483 回答