La clase de fuente es una parte de JavaFX. La clase Font representa las fuentes, que se utilizan para representar texto en la pantalla. El tamaño de una fuente se describe como especificado en puntos que son una medida real de aproximadamente 1/72 de pulgada. La clase de fuente hereda la clase de objeto .
Constructores de la clase:
- Fuente (doble s) : crea un objeto de fuente con el tamaño especificado.
- Fuente (String n, double s): crea un objeto de fuente con el nombre y el tamaño especificados.
Métodos comúnmente utilizados:
Método | Explicación |
---|---|
fuente (doble s) | Crea un objeto de fuente con el tamaño especificado. |
fuente (String f) | Crea un objeto de fuente con el nombre de familia especificado. |
fuente (String f, doble s) | Crea un objeto de fuente con el nombre de familia y el tamaño especificados. |
fuente (String f, Postura de fuente p, doble s) | Crea un objeto de fuente con el nombre de familia, la postura y el tamaño especificados. |
fuente (String f, peso de FontWeight, doble s) | Crea un objeto de fuente con el nombre de familia, el peso de fuente y el tamaño especificados. |
fuente (String f, Peso de fuente w, Postura de fuente p, doble s) | Crea un objeto de fuente con el nombre de familia, el peso de fuente, la postura de fuente y el tamaño especificados. |
getDefault() | Devuelve la fuente predeterminada. |
obtenerFamilias() | Obtiene todas las familias de fuentes instaladas en el sistema del usuario. |
obtenerFamilia() | Devuelve la familia de la fuente. |
getFontNames() | Obtiene los nombres de todas las fuentes que están instaladas en el sistema de los usuarios. |
getFontNames(String f) | Obtiene los nombres de todas las fuentes de la familia de fuentes especificada que están instaladas en el sistema de los usuarios. |
loadFont(Entrada InputStream, doble s) | Carga un recurso de fuente del flujo de entrada especificado. |
loadFont (string de URL, doble s) | Carga un recurso de fuente desde la URL especificada. |
obtenerNombre() | El nombre completo de la fuente. |
obtenerTamaño() | El tamaño en puntos de esta fuente. |
Los siguientes programas ilustran el uso de Font Class:
- Programa en Java para crear un objeto de fuente y aplicarlo a un texto: En este programa crearemos una fuente llamada fuente y especificaremos su familia, su peso y tamaño de fuente. Aplique esta fuente al texto y agregue este texto al flujo de texto denominado TextFlow. Cree un VBox llamado vbox y agregue el flujo de texto al vbox y agregue el vbox a la escena y agregue la escena al escenario. Llame a la función show() para mostrar los resultados.
// Java Program to create a font object
// and apply it to a text
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
Font_1
extends
Application {
// launch the application
public
void
start(Stage stage)
{
try
{
// set title for the stage
stage.setTitle(
"Font"
);
// 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);
// create a font
Font font = Font.font(
"Verdana"
, FontWeight.EXTRA_BOLD,
25
);
// set font of the text
text_1.setFont(font);
// set text
text_flow.getChildren().add(text_1);
// 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:
- Programa Java para crear un objeto de fuente y aplicarlo a un texto y permitir que el usuario seleccione la fuente del cuadro combinado: En este programa crearemos una Fuente llamada fuente y especificaremos su familia, su peso y tamaño de fuente. Aplique esta fuente al texto y agregue este texto al flujo de texto denominado TextFlow. Cree un VBox llamado vbox y agregue el flujo de texto al vbox y agregue el vbox a la escena y agregue la escena al escenario. Cree dos cuadros combinados y agregue los nombres de fuente a uno y el peso de la fuente al otro y cree un controlador de eventos para manejar los eventos de los cuadros combinados y establezca la fuente en el tipo especificado por el usuario.
// Java Program to create a font object
// and apply it to a text and allow the
// user to select font from the combo box
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
Font_2
extends
Application {
// launch the application
public
void
start(Stage stage)
{
try
{
// set title for the stage
stage.setTitle(
"Font"
);
// 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);
// create a font
Font font = Font.font(Font.getFontNames().get(
0
),
FontWeight.EXTRA_BOLD,
20
);
// 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 a combo box
ComboBox combo_box1 =
new
ComboBox(FXCollections.observableArrayList(Font.getFontNames()));
// Create action event
EventHandler<ActionEvent> event =
new
EventHandler<ActionEvent>() {
public
void
handle(ActionEvent e)
{
// set font of the text
text_1.setFont(Font.font((String)combo_box1.getValue(),
FontWeight.valueOf((String)combo_box.getValue()),
20
));
}
};
// Create action event
EventHandler<ActionEvent> event1 =
new
EventHandler<ActionEvent>() {
public
void
handle(ActionEvent e)
{
// set font of the text
text_1.setFont(Font.font((String)combo_box1.getValue(),
FontWeight.valueOf((String)combo_box.getValue()),
20
));
}
};
// Set on action
combo_box.setOnAction(event);
combo_box1.setOnAction(event1);
// set font of the text
text_1.setFont(font);
// set text
text_flow.getChildren().add(text_1);
// set line spacing
text_flow.setLineSpacing(
20
.0f);
// create a HBox
HBox hbox =
new
HBox(combo_box, combo_box1);
// create VBox
VBox vbox =
new
VBox(hbox, text_flow);
// set spacing
vbox.setSpacing(
30.0
);
// 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/Font.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