JavaFX | Clase de peso de fuente

La clase FontWeight es parte de JavaFX. La clase FontWeight define el peso de la fuente. La clase FontWeight especifica diferentes pesos de fuente que se pueden usar al buscar una fuente en el sistema. La clase FontWeight hereda la clase Enum .

Métodos comúnmente utilizados:

Método Explicación
buscarPorNombre(String n) Devuelve FontWeight por su nombre.
encontrarPorPeso(int w) Devuelve el FontWeight más cercano a un valor de peso.
conseguir peso() Devuelve el peso visual.
valorDe(String n) Devuelve la constante de enumeración de este tipo con el nombre especificado.
valores() devuelve todos los valores del tipo FontWeight.

Los siguientes programas ilustran el uso de FontWeight Class:

  1. Programa Java para crear un TextFlow y agregarle un objeto de texto, establecer la alineación del texto y también establecer el peso de la fuente del texto y establecer el espacio entre líneas del flujo de texto: En este programa crearemos un TilePane llamado tile_pane . Agregue Label etiqueta con nombre y algunos botones al panel_azulejos . Establece la Alineación del panel_azulejo usando la función setAlignment() . Establezca el Peso de fuente de la fuente en EXTRA_BOLD . Agregue el panel_azulejos a la escena y agregue la escena al escenario y llame a la función show() para mostrar los resultados finales.

    // Java program to create a TextFlow and
    // add text object to it, set text Alignment
    // and also set font weight of the font of text
    // and set line spacing of the text flow.
    import javafx.application.Application;
    import javafx.scene.Scene;
    import javafx.scene.control.*;
    import javafx.scene.layout.*;
    import javafx.stage.Stage;
    import javafx.scene.layout.*;
    import javafx.scene.paint.*;
    import javafx.scene.text.*;
    import javafx.geometry.*;
    import javafx.scene.layout.*;
    import javafx.scene.shape.*;
      
    public class FontWeight_1 extends Application {
      
        // launch the application
        public void start(Stage stage)
        {
      
            try {
      
                // set title for the stage
                stage.setTitle("FontWeight");
      
                // create TextFlow
                TextFlow text_flow = new TextFlow();
      
                // create text
                Text text_1 = new Text("GeeksforGeeks\n");
      
                // set the text color
                text_1.setFill(Color.GREEN);
      
                // set font of the text
                text_1.setFont(Font.font("Verdana", FontWeight.EXTRA_BOLD, 25));
      
                // set text
                text_flow.getChildren().add(text_1);
      
                // set text Alignment
                text_flow.setTextAlignment(TextAlignment.CENTER);
      
                // set line spacing
                text_flow.setLineSpacing(20.0f);
      
                // create VBox
                VBox vbox = new VBox(text_flow);
      
                // set alignment of vbox
                vbox.setAlignment(Pos.CENTER);
      
                // create a scene
                Scene scene = new Scene(vbox, 400, 300);
      
                // set the scene
                stage.setScene(scene);
      
                stage.show();
            }
      
            catch (Exception e) {
      
                System.out.println(e.getMessage());
            }
        }
      
        // Main Method
        public static void main(String args[])
        {
      
            // launch the application
            launch(args);
        }
    }

    Producción:

  2. Programa Java para crear un TextFlow y agregarle un objeto de texto, establecer la alineación del texto y también establecer el peso de la fuente del texto y también establecer un cuadro combinado para cambiar el peso de la fuente y establecer el espacio entre líneas del flujo de texto: En este programa nosotros creará un TilePane llamado tile_pane . Agregue Label etiqueta con nombre y algunos botones al panel_azulejos . Establece la Alineación del panel_azulejo usando la función setAlignment() . Ahora establezca el FontWeight de la fuente en EXTRA_BOLD . Almacene todos los nombres de los valores de FontWeight en una array de strings. Ahora crea un cuadro combinadoque contendrá los nombres de los valores de FontWeight y también creará un evento de acción para manejar los eventos del cuadro combinado. El controlador de eventos establecerá el peso de fuente de la fuente en el valor de FontWeight elegido. Ahora cree un VBox y agregue el mosaico y el cuadro combinado a vbox . Finalmente, agregue el vbox a la escena y agregue la escena al escenario y llame a la función show() para mostrar los resultados finales.

    // Java program to create a TextFlow and
    // add text object to it, set text Alignment
    // and also set font weight of the font of text
    // and also set a combo box to change font weight
    // and set line spacing of the text flow.
    import javafx.application.Application;
    import javafx.scene.Scene;
    import javafx.scene.control.*;
    import javafx.scene.layout.*;
    import javafx.stage.Stage;
    import javafx.scene.layout.*;
    import javafx.scene.paint.*;
    import javafx.scene.text.*;
    import javafx.geometry.*;
    import javafx.scene.layout.*;
    import javafx.scene.shape.*;
    import javafx.collections.*;
    import javafx.event.ActionEvent;
    import javafx.event.EventHandler;
      
    public class FontWeight_2 extends Application {
      
    // launch the application
    public void start(Stage stage)
    {
      
        try {
      
            // set title for the stage
            stage.setTitle("FontWeight");
      
            // create TextFlow
            TextFlow text_flow = new TextFlow();
      
            // create text
            Text text_1 = new Text("GeeksforGeeks\n");
      
            // set the text color
            text_1.setFill(Color.GREEN);
      
            // set font of the text
            text_1.setFont(Font.font(Font.getFontNames().get(0),
                                    FontWeight.EXTRA_BOLD, 50));
      
            // font weight names
            String weight[] = {"BLACK", "BOLD"
                               "EXTRA_BOLD"
                               "EXTRA_LIGHT"
                               "LIGHT"
                               "MEDIUM"
                               "NORMAL"
                               "SEMI_BOLD",
                               "THIN" };
      
            // Create a combo box
            ComboBox combo_box = 
              new ComboBox(FXCollections.observableArrayList(weight));
      
            // Create action event
            EventHandler<ActionEvent> event = new EventHandler<ActionEvent>() {
      
                public void handle(ActionEvent e)
                {
                      
                    // set font of the text
                    text_1.setFont(Font.font(Font.getFontNames().get(0), 
                     FontWeight.valueOf((String)combo_box.getValue()), 50));
                }
            };
      
            // Set on action
            combo_box.setOnAction(event);
      
            // set text
            text_flow.getChildren().add(text_1);
      
            // set text Alignment
            text_flow.setTextAlignment(TextAlignment.CENTER);
      
            // set line spacing
            text_flow.setLineSpacing(20.0f);
      
            // create VBox
            VBox vbox = new VBox(combo_box, text_flow);
      
            // set alignment of vbox
            vbox.setAlignment(Pos.CENTER);
      
            // create a scene
            Scene scene = new Scene(vbox, 400, 300);
      
            // set the scene
            stage.setScene(scene);
      
            stage.show();
        }
      
        catch (Exception e) {
      
            System.out.println(e.getMessage());
        }
    }
      
    // Main Method
    public static void main(String args[])
    {
      
        // launch the application
        launch(args);
    }
    }

    Producción:

Nota: Es posible que los programas anteriores no se ejecuten en un IDE en línea; use un compilador fuera de línea.

Referencia: https://docs.oracle.com/javase/8/javafx/api/javafx/scene/text/FontWeight.html

Publicación traducida automáticamente

Artículo escrito por andrew1234 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *