JavaFX - पाठ
विभिन्न आकृतियों की तरह, आप JavaFX में एक टेक्स्ट नोड भी बना सकते हैं। पाठ नोड नाम के वर्ग द्वारा दर्शाया गया हैText, जो पैकेज के अंतर्गत आता है javafx.scene.text।
इस वर्ग में JavaFX में टेक्स्ट बनाने और उसकी उपस्थिति को संशोधित करने के लिए कई गुण हैं। यह वर्ग शेप वर्ग को भी विरासत में मिला है जो पैकेज के अंतर्गत आता हैjavafx.scene.shape।
इसलिए, पाठ के गुणों जैसे कि फ़ॉन्ट, संरेखण, लाइन रिक्ति, पाठ आदि के अलावा, यह मूल आकार नोड जैसे कि इनहेरिट करता है strokeFill, stroke, strokeWidth, strokeType, आदि।
एक पाठ नोड बनाना
पैकेज के वर्ग पाठ के बाद से javafx.scene.text JavaFX में टेक्स्ट नोड का प्रतिनिधित्व करता है, आप निम्नानुसार इस वर्ग को तत्काल बनाकर एक टेक्स्ट बना सकते हैं -
Text text = new Text();
क्लास टेक्स्ट में एक संपत्ति होती है जिसका नाम है text स्ट्रिंग प्रकार, जो कि बनाए जाने वाले पाठ का प्रतिनिधित्व करता है।
पाठ वर्ग को तत्काल करने के बाद, आपको इस गुण का उपयोग करके मान सेट करना होगा setText() नीचे दिखाए अनुसार विधि।
String text = "Hello how are you"
Text.setText(text);
आप अपने संबंधित सेटर विधियों जैसे गुण x और y के मान निर्दिष्ट करके पाठ की स्थिति (उत्पत्ति) भी सेट कर सकते हैं setX() तथा setY() जैसा कि निम्नलिखित कोड ब्लॉक में दिखाया गया है -
text.setX(50);
text.setY(50);
उदाहरण
निम्न प्रोग्राम एक उदाहरण है जो दर्शाता है कि JavaFX में टेक्स्ट नोड कैसे बनाया जाता है। इस कोड को नाम वाली फ़ाइल में सहेजेंTextExample.java।
import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.stage.Stage;
import javafx.scene.text.Text;
public class TextExample extends Application {
@Override
public void start(Stage stage) {
//Creating a Text object
Text text = new Text();
//Setting the text to be added.
text.setText("Hello how are you");
//setting the position of the text
text.setX(50);
text.setY(50);
//Creating a Group object
Group root = new Group(text);
//Creating a scene object
Scene scene = new Scene(root, 600, 300);
//Setting title to the Stage
stage.setTitle("Sample Application");
//Adding scene to the stage
stage.setScene(scene);
//Displaying the contents of the stage
stage.show();
}
public static void main(String args[]){
launch(args);
}
}
निम्न कमांड का उपयोग करके कमांड प्रॉम्प्ट से सहेजे गए जावा फ़ाइल को संकलित और निष्पादित करें।
javac TextExample.java
java TextExample
निष्पादित करने पर, उपरोक्त कार्यक्रम एक जावाएफएक्स विंडो बनाता है जो निर्दिष्ट पाठ को निम्नानुसार प्रदर्शित करता है -
पाठ की स्थिति और फ़ॉन्ट
डिफ़ॉल्ट रूप से, टेक्स्ट क्लास द्वारा बनाया गया टेक्स्ट फ़ॉन्ट ..., आकार ... और काले रंग का होता है।
आप टेक्स्ट का उपयोग करके फ़ॉन्ट का आकार और रंग बदल सकते हैं setFont()तरीका। यह विधि किसी वस्तु को स्वीकार करती हैFont कक्षा।
नाम का वर्ग Font पैकेज का javafx.scene.textपाठ के लिए फ़ॉन्ट को परिभाषित करने के लिए उपयोग किया जाता है। इस वर्ग में एक स्थिर नाम की विधि हैfont()।
यह विधि चार मापदंडों को स्वीकार करती है -
family - यह एक स्ट्रिंग प्रकार का है और उस फ़ॉन्ट के परिवार का प्रतिनिधित्व करता है जिसे हम पाठ पर लागू करना चाहते हैं।
weight- यह संपत्ति फ़ॉन्ट के वजन का प्रतिनिधित्व करती है। यह 9 मानों को स्वीकार करता है, जो हैं -FontWeight.BLACK, FontWeight.BOLD, FontWeight.EXTRA_BOLD, FontWeight.EXTRA_LIGHT, LIGHT, MEDIUM, NORMAL, SEMI_BOLD, THIN।
posture- यह संपत्ति फ़ॉन्ट मुद्रा (नियमित या इटैलिक) का प्रतिनिधित्व करती है। यह दो मूल्यों को स्वीकार करता हैFontPosture.REGULAR तथा FontPosture.ITALIC।
size - यह संपत्ति टाइप डबल की है और यह फ़ॉन्ट के आकार का प्रतिनिधित्व करती है।
आप निम्न विधि का उपयोग करके पाठ को फ़ॉन्ट सेट कर सकते हैं -
text.setFont(Font.font("verdana", FontWeight.BOLD, FontPosture.REGULAR, 20));
उदाहरण
निम्नलिखित प्रोग्राम जावाएफएक्स में टेक्स्ट नोड के फ़ॉन्ट को सेट करने के तरीके को प्रदर्शित करने वाला एक उदाहरण है। यहां, हम वर्दाना के लिए फ़ॉन्ट सेट कर रहे हैं, वजन बोल्ड करने के लिए, नियमित रूप से आसन और आकार 20 तक।
इस कोड को नाम वाली फ़ाइल में सहेजें TextFontExample.java।
import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.stage.Stage;
import javafx.scene.text.Font;
import javafx.scene.text.FontPosture;
import javafx.scene.text.FontWeight;
import javafx.scene.text.Text;
public class TextFontExample extends Application {
@Override
public void start(Stage stage) {
//Creating a Text object
Text text = new Text();
//Setting font to the text
text.setFont(Font.font("verdana", FontWeight.BOLD, FontPosture.REGULAR, 20));
//setting the position of the text
text.setX(50);
text.setY(130);
//Setting the text to be added.
text.setText("Hi how are you");
//Creating a Group object
Group root = new Group(text);
//Creating a scene object
Scene scene = new Scene(root, 600, 300);
//Setting title to the Stage
stage.setTitle("Setting Font to the text");
//Adding scene to the stage
stage.setScene(scene);
//Displaying the contents of the stage
stage.show();
}
public static void main(String args[]){
launch(args);
}
}
निम्न कमांड का उपयोग करके कमांड प्रॉम्प्ट से सहेजे गए जावा फ़ाइल को संकलित और निष्पादित करें।
javac TextFontExample.java
java TextFontExample
निष्पादित करने पर, उपरोक्त कार्यक्रम एक जावाएफएक्स विंडो उत्पन्न करता है जो पाठ को निर्दिष्ट फ़ॉन्ट के साथ निम्नानुसार प्रदर्शित करता है -
स्ट्रोक और रंग
पाठ वर्ग भी पैकेज के वर्ग आकार विरासत में मिला है। इसलिए, आप उपयोग कर सकते हैंjavafx.scene.shape जिसके साथ आप टेक्स्ट नोड पर भी स्ट्रोक और रंग सेट कर सकते हैं।
आप पाठ का उपयोग करके रंग सेट कर सकते हैं setFill() आकार की विधि (विरासत में मिली) वर्ग निम्नानुसार है -
text.setFill(Color.BEIGE);
इसी तरह, आप विधि का उपयोग करके पाठ का स्ट्रोक रंग सेट कर सकते हैं setStroke()। जबकि विधि का उपयोग करके स्ट्रोक की चौड़ाई निर्धारित की जा सकती हैsetStrokeWidth() निम्नानुसार है -
//Setting the color
text.setFill(Color.BROWN);
//Setting the Stroke
text.setStrokeWidth(2);
//Setting the stroke color
text.setStroke(Color.BLUE);
उदाहरण
निम्न प्रोग्राम एक उदाहरण है जो प्रदर्शित करता है कि टेक्स्ट नोड का रंग, स्ट्रोकवार्ड और स्ट्रोककोलर कैसे सेट किया जाए। इस कोड में, हम स्ट्रोक का रंग - नीला, पाठ का रंग - भूरा और स्ट्रोक की चौड़ाई - 2 कर रहे हैं।
इस कोड को नाम वाली फ़ाइल में सहेजें StrokeExample.java।
import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.paint.Color;
import javafx.stage.Stage;
import javafx.scene.text.Font;
import javafx.scene.text.FontPosture;
import javafx.scene.text.FontWeight;
import javafx.scene.text.Text;
public class StrokeExample extends Application {
@Override
public void start(Stage stage) {
//Creating a Text object
Text text = new Text();
//Setting font to the text
text.setFont(Font.font("verdana", FontWeight.BOLD, FontPosture.REGULAR, 50));
//setting the position of the text
text.setX(50);
text.setY(130);
//Setting the color
text.setFill(Color.BROWN);
//Setting the Stroke
text.setStrokeWidth(2);
// Setting the stroke color
text.setStroke(Color.BLUE);
//Setting the text to be added.
text.setText("Hi how are you");
//Creating a Group object
Group root = new Group(text);
//Creating a scene object
Scene scene = new Scene(root, 600, 300);
//Setting title to the Stage
stage.setTitle("Setting font to the text");
//Adding scene to the stage
stage.setScene(scene);
//Displaying the contents of the stage
stage.show();
}
public static void main(String args[]){
launch(args);
}
}
निम्न कमांड का उपयोग करके कमांड प्रॉम्प्ट से सहेजे गए जावा फ़ाइल को संकलित और निष्पादित करें।
javac StrokeExample.java
java StrokeExample
निष्पादित करने पर, उपरोक्त कार्यक्रम एक जावाएफ़एक्स खिड़की उत्पन्न करता है जो पाठ को निर्दिष्ट स्ट्रोक और रंग विशेषताओं के साथ प्रदर्शित करता है -
पाठ के लिए सजावट लागू करना
आप सजावट भी लागू कर सकते हैं जैसे कि हड़ताल के माध्यम से; जिस स्थिति में पाठ के माध्यम से एक रेखा पार की जाती है। के तरीकों का उपयोग करके आप एक पाठ को रेखांकित कर सकते हैंText कक्षा।
आप विधि का उपयोग करके पाठ के माध्यम से हड़ताल कर सकते हैं setStrikethrough()। यह बूलियन मान को स्वीकार करता है, मान पास करता हैtrue इस विधि को पाठ के माध्यम से हड़ताल करने के लिए जैसा कि निम्नलिखित कोड बॉक्स में दिखाया गया है -
//Striking through the text
text1.setStrikethrough(true);
उसी तरह, आप किसी पाठ को मान पास करके रेखांकित कर सकते हैं true विधि के लिए setUnderLine() निम्नानुसार है -
//underlining the text
text2.setUnderline(true);
उदाहरण
निम्नलिखित कार्यक्रम एक उदाहरण है जो यह दर्शाता है कि सजावट कैसे लागू करें underline या strike throughएक पाठ के लिए। इस कोड को नाम वाली फ़ाइल में सहेजेंDecorationsExample.java।
import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.stage.Stage;
import javafx.scene.text.Font;
import javafx.scene.text.FontPosture;
import javafx.scene.text.FontWeight;
import javafx.scene.text.Text;
public class DecorationsExample extends Application {
@Override
public void start(Stage stage) {
//Creating a Text_Example object
Text text1 = new Text("Hi how are you");
//Setting font to the text
text1.setFont(Font.font("verdana", FontWeight.BOLD, FontPosture.REGULAR, 20));
//setting the position of the text
text1.setX(50);
text1.setY(75);
//Striking through the text
text1.setStrikethrough(true);
//Creating a Text_Example object
Text text2 = new Text("Welcome to Tutorialspoint");
//Setting font to the text
text2.setFont(Font.font("verdana", FontWeight.BOLD, FontPosture.REGULAR, 20));
//setting the position of the text
text2.setX(50);
text2.setY(150);
//underlining the text
text2.setUnderline(true);
//Creating a Group object
Group root = new Group(text1, text2);
//Creating a scene object
Scene scene = new Scene(root, 600, 300);
//Setting title to the Stage
stage.setTitle("Decorations Example");
//Adding scene to the stage
stage.setScene(scene);
//Displaying the contents of the stage
stage.show();
}
public static void main(String args[]){
launch(args);
}
}
निम्न आदेशों का उपयोग करके कमांड प्रॉम्प्ट से सहेजी गई जावा फ़ाइल को संकलित करें और निष्पादित करें।
javac DecorationsExample.java
java DecorationsExample
निष्पादित करने पर, उपरोक्त कार्यक्रम एक JavaFX विंडो बनाता है जैसा कि नीचे दिखाया गया है -