Menggunakan kelas Font di program Java
Menggunakan Kelas Font Di Program Java
Terkadang komponen Java perlu diperindah tidak hanya menggunakan warna, tetapi juga font (huruf) yang tertera di komponen tersebut, Anda mungkin ingin merubah jenis font ke SansSerif atau Serif, mungkin perlu mempertebal (bold), memberi garis bawah (underline) atau ingin tercetak miring (italic). Di Java, Anda dapat melakukan hal tersebut melalui kelas bantu java.awt.Font menggunakan metoda setFont.

Kelas Font adalah turunan dari kelas Object yang berada di puncak hierarki kelas Java. Berikut ini adalah hierarki turunan dari kelas java.awt.Font di Java.

Hierarki turunan kelas Font di Java

Kelas Font di Java mempunyai dua konstruktor. Salah satu konstruktor yang sering digunakan untuk mengkonstruksi obyek font adalah sebagai berikut:

Font(String name, int style, int size);

Konstruktor di atas digunakan untuk membuat atau mengkonstruksi obyek font dengan tiga parameter yaitu name (nama), style (model) dan size (ukuran). Parameter name dapat berupa font apa saja yang didukung sistem komputer dimana program Java dijalankan.

Nilai parameter style dapat berupa salah satu atau kombinasi konstanta bernilai int yaitu Font.BOLD, Font.PLAIN, Font.ITALIC. Contoh kombinasi konstanta adalah Font.BOLD + Font.ITALIC. Parameter size adalah nilai int positif berapa saja. Font diukur dalam points dan satu point adalah 1/72 inch.

Nama semua font yang ada di sistem komputer dapat diketahui melalui obyek kelas GraphicsEnvironment dengan menggunakan metoda getLocalGraphicsEnvironment. Untuk mendapatkan daftar nama font yang ada di sistem komputer, dapat digunakan metoda getAvailableFontFamilyNames.

Contoh program Java berikut ini menampilkan daftar nama font yang terinstal di sistem komputer. Contoh program juga memperkenalkan komponen grafis Java lainnya yaitu kelas JScrollPane. Kelas Font sendiri untuk merubah tampilan obyek dari kelas JScrollPane.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
// Nama file : FontSystem.java
// Mendapatkan nama font yang tersedia di sistem komputer
 
// Mengimpor kelas
import java.awt.GraphicsEnvironment;
import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.Font;
import javax.swing.JScrollPane;
import javax.swing.JFrame;
import javax.swing.JTextArea;
 
// Deklarasi kelas
public class FontSystem extends JFrame {
 
   public FontSystem() {
      Container container = getContentPane();
      container.setLayout(new BorderLayout());
 
      GraphicsEnvironment graphic;
      graphic = GraphicsEnvironment.getLocalGraphicsEnvironment();
      String[] namaFont = graphic.getAvailableFontFamilyNames();
 
      String string = "";
      for (int x = 0; x < namaFont.length; x++) {
         string += namaFont[x];
         string += (x < namaFont.length - 1) ? "\n" : "";
      }
 
      Font font = new Font("Tahoma", Font.BOLD + Font.ITALIC, 11);
      JTextArea area = new JTextArea();
      area.append(string);
      area.setFont(font);
 
      JScrollPane pane = new JScrollPane(area);
      container.add(pane, BorderLayout.CENTER);
   }
 
   // Metoda main
   public static void main(String[] args) {
      FontSystem frame = new FontSystem();
      frame.setTitle("Nama Font Tersedia di Sistem");
      frame.setSize(270, 170);
      frame.setVisible(true);
      frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   }
}

Menggunakan kelas Font di Java

Pernyataan baris nomor 21 menghasilkan obyek kelas GraphicsEnvironment dan acuan ke obyek tersebut diberikan ke variabel graphic. GraphicsEnvironment adalah kelas abstrak yang menghasilkan gambaran lingkungan grafis sistem komputer. Untuk memperoleh semua nama font yang ada di sistem komputer, digunakan metoda getAvailableFontFamilyNames. Nama-nama font kemudian disimpan ke variabel larik tipe string, namaFont.

Perulangan for baris nomor 25 – 28 melakukan iterasi untuk menyimpan nama font ke dalam variabel string tipe String. Semua nama font yang ada di sistem komputer dan yang tersimpan di dalam variabel string kemudian diletakkan di variabel acuan area dari kelas JTextArea. Tampilan font di dalam obyek area kemudian dirubah menjadi cetak tebal dan miring menggunakan metoda setFont(Color c).

Baris nomor 35 adalah pernyataan untuk membuat atau mengkonstruksi obyek dari kelas JScrollPane dan memberi variabel pane acuan ke obyek tersebut. Parameter konstruktor kelas JScrollPane diberi argumen berupa variabel area yang mengacu ke obyek dari kelas JTextArea.

Dengan menjadikan variabel area argumen parameter konstruktor, maka area teks ditampilkan dengan bilah penggulung di sebelah kanan. Pernyataan baris nomor 36 kemudian meletakkan obyek kelas JScrollPane ke content pane dari frame.

SILAHKAN BAGIKAN ARTIKEL INI!
Pin It

Produk Laris Toko Gerzal

Edifier R1700BT Active 2.0 Bluetooth Bookshelf Speaker Set

Edifier R1700BT Active 2.0 Bluetooth Bookshelf Speaker Set

Beli di Shopee
Sunbuck AV-555BT Audio Amplifier Bluetooth 5.0 Microphone HiFi

Sunbuck AV-555BT Audio Amplifier Bluetooth 5.0 Microphone HiFi

Beli di Shopee
QUEED Power Supply Station Generator 220V 69800mAh

QUEED Power Supply Station Generator 220V 69800mAh

Beli di Shopee
Fosi Audio V3 Power Amplifier 2 Channel Audio Stereo Hi-Fi TI TPA3255

Fosi Audio V3 Power Amplifier 2 Channel Audio Stereo Hi-Fi

Beli di Shopee
Fosi Audio MC101 Mini Bluetooth Stereo Amplifier With VU Meter

Fosi Audio MC101 Mini Bluetooth Stereo Amplifier With VU Meter

Beli di Shopee