gpt4 book ai didi

java - 如何使用透明度(特别是使用不透明度)使文本在椭圆上实体化

转载 作者:行者123 更新时间:2023-12-01 10:12:33 25 4
gpt4 key购买 nike

所以我几天来一直在努力解决这个问题,但我无法让 Text text = new Text("Name"); 在我正在尝试的椭圆上清楚地显示请不要使用 setOpacity ,因此其他建议将被忽略。我已经尝试了好几个星期了,它开始真正让我生气,这是我最接近的代码:

import javafx.application.Application;
import javafx.scene.shape.Ellipse;
import javafx.scene.Scene;
import javafx.scene.layout.Pane;
import javafx.scene.paint.Color;
import javafx.scene.text.Font;
import javafx.scene.text.FontWeight;
import javafx.scene.text.Text;
import javafx.stage.Stage;

public class ellipseICE07 extends Application {

@Override
public void start(Stage stage){
Pane pane = new Pane();

Text text = new Text("Name");
text.setLayoutY(205);
text.setLayoutX(255);
text.setStroke(Color.BLUE);
text.setOpacity(2.0);
text.setFont(Font.font("Cambria", FontWeight.BOLD, 34));
pane.getChildren().add(text);

for(int o = 0; o < 180; o += 10){
Ellipse ep = new Ellipse(300, 200, 100, 3);
ep.setRotate(o);
ep.setFill(null);
ep.setOpacity(0.3);
ep.setStroke(Color.RED);
pane.getChildren().add(ep);
}




for(int i = 0; i < 180; i += 5){
Ellipse ep1 = new Ellipse(300, 200, 100, 3);
ep1.setRotate(i);
ep1.setFill(null);
ep1.setOpacity(0.3);
ep1.setStroke(Color.RED);
pane.getChildren().add(ep1);

}


Scene scene = new Scene(pane, 600, 400);
stage.setScene(scene);
stage.show();

}

public static void main(String[] args){
launch(args);
}

}

请帮忙。

最佳答案

那么这个版本的代码怎么样?是不是更接近你的预期?

import javafx.application.Application;
import javafx.scene.shape.Ellipse;
import javafx.scene.Scene;
import javafx.scene.layout.Pane;
import javafx.scene.paint.Color;
import javafx.scene.text.Font;
import javafx.scene.text.FontWeight;
import javafx.scene.text.Text;
import javafx.stage.Stage;

public class ellipseICE07 extends Application {

@Override
public void start(Stage stage) {
Pane pane = new Pane();

Text text = new Text("Name");
text.setLayoutY(205);
text.setLayoutX(255);
text.setStroke(null);
text.setFill(Color.BLUE);
// text.setOpacity(2.0);
text.setFont(Font.font("Cambria", FontWeight.BOLD, 34));

for (int o = 0; o < 180; o += 10) {
Ellipse ep = new Ellipse(300, 200, 100, 3);
ep.setRotate(o);
ep.setFill(null);
// ep.setOpacity(0.3);
ep.setStroke(Color.RED);
pane.getChildren().add(ep);
}

for (int i = 0; i < 180; i += 5) {
Ellipse ep1 = new Ellipse(300, 200, 100, 3);
ep1.setRotate(i);
ep1.setFill(null);
// ep1.setOpacity(0.3);
ep1.setStroke(Color.RED);
pane.getChildren().add(ep1);

}

pane.getChildren().add(text);

Scene scene = new Scene(pane, 600, 400);
stage.setScene(scene);
stage.show();

}

public static void main(String[] args) {
launch(args);
}

}

关于java - 如何使用透明度(特别是使用不透明度)使文本在椭圆上实体化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36062198/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com