Java
 Computer >> コンピューター >  >> プログラミング >> Java

JavaFXでテキストの配置(アライメント)を調整する方法


JavaFXでは、wrappingWidthプロパティに値を設定することで、ユーザー空間におけるテキストの固定幅を指定できます。この値を設定すると、指定された幅がユーザー座標系におけるテキストの境界として扱われ、テキストはその幅の中に収まるように配置されます。

このプロパティに値が設定されていない場合、デフォルトではテキスト内の最も長い行の長さがバウンディングボックスの幅として採用されます。

テキストの配置(アライメント)とは、バウンディングボックス内でテキストを水平方向にどのように並べるかを指します。setTextAlignment()メソッドを使用することで、テキストの配置を簡単に調整できます。このメソッドはTextAlignment列挙型の定数を1つ受け取り、その値に応じてテキストを配置します。TextAlignment列挙型には、以下の4つの定数が用意されています。

  • CENTER − バウンディングボックスの中央にテキストを揃えます。

  • JUSTIFY − バウンディングボックス内でテキストを両端揃えにします。

  • LEFT − テキストを左揃えにします。

  • RIGHT − テキストを右揃えにします。

サンプルコード

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.InputStream;
import java.util.Scanner;
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.Text;
import javafx.scene.text.TextAlignment;
public class TextAllignment extends Application {
    public void start(Stage stage) throws FileNotFoundException {
        // テキストファイルの内容を読み込む
        InputStream inputStream = new FileInputStream("D:\\sample.txt");
        Scanner sc = new Scanner(inputStream);
        StringBuffer sb = new StringBuffer();
        while(sc.hasNext()) {
            sb.append(" "+sc.nextLine()+"\n");
        }
        // Textオブジェクトを作成
        Text text = new Text(10.0, 25.0, sb.toString());
        // テキストの折り返し幅を設定
        text.setWrappingWidth(565);
        // 配置を設定
        text.setTextAlignment(TextAlignment.Right);
        // ステージの設定
        Group root = new Group(text);
        Scene scene = new Scene(root, 595, 150, Color.BEIGE);
        stage.setTitle("Text Alignment");
        stage.setScene(scene);
        stage.show();
    }
    public static void main(String args[]){
        launch(args);
    }
}

sample.txt の内容

ここでは、sample.txtファイルの内容が以下であると仮定します。

Tutorials Point originated from the idea that there exists a class of readers who respond better 
to online content and prefer to learn new skills at their own pace from the comforts of their drawing rooms.
The journey commenced with a single tutorial on HTML in 2006 and elated by the response it generated, 
we worked our way to adding fresh tutorials to our repository which now proudly flaunts a wealth of 
tutorials and allied articles on topics ranging from programming languages to web designing to academics 
and much more.

実行結果

JavaFXでテキストの配置(アライメント)を調整する方法

上記のコードでは右揃え(RIGHT)が適用されています。同様に、配置の値を変更すると、それぞれ以下のような出力が得られます。

LEFT(左揃え)−

JavaFXでテキストの配置(アライメント)を調整する方法

CENTER(中央揃え)−

JavaFXでテキストの配置(アライメント)を調整する方法

JUSTIFY(両端揃え)−

JavaFXでテキストの配置(アライメント)を調整する方法

  1. Tkinterでラベルのテキストを取得する方法を解説

    TkinterのLabel(ラベル)ウィジェットは、ウィンドウ上にテキストや画像を表示するために使用される基本的なコンポーネントです。フォントファミリーやパディング、幅・高さなどのオプションを指定することで、ラベルの見た目を自由にカスタマイズできます。ラベルに設定したテキストを取得したい場合は、ラベルウィジェットに対して [text] を指定するだけで、簡単にその値へアクセスできます。以下に具体的なサンプルコードを示します。サンプルコード# 必要なライブラリをインポート from tkinter import * # tkinterフレームのインスタンスを作成 win = Tk() # ウ

  2. 【保存版】テキストの大文字・小文字を一瞬で変換する方法|Word・Googleドキュメント・Mac・オンラインツール対応

    Microsoft WordやGoogleドキュメントで文章を入力した際、「大文字と小文字を間違えて打ってしまった…」という経験はありませんか?「小文字を大文字に(あるいはその逆に)変えたいのに方法がわからない」というお問い合わせを多くいただきます。中には、誤入力した部分を全部消して打ち直そうと考えている方もいますが、実はもっと効率的な解決策があります。幸いなことに、Microsoft Wordをはじめとするほぼすべてのテキストエディタには、選択したテキストの大文字・小文字を変換する機能が標準搭載されています。ITに詳しくない方でも簡単に操作でき、しかもその方法は複数あります。この記事では、そ