na Jawie, Czcionka jest klasą należącą do Java.awt pakiet. Implementuje interfejs Serializable. FontUIResource jest bezpośrednio znaną podklasą klasy Java Font.
Reprezentuje czcionkę używaną do renderowania tekstu. W Javie istnieją dwa terminy techniczne używane do opisu czcionki: postacie I Glify .
Rodzaje czcionek w Javie
W Javie istnieją dwa typy czcionek:
- Czcionki fizyczne
- Czcionki logiczne
Czcionki fizyczne
Czcionki fizyczne to rzeczywista biblioteka czcionek Java. Zawiera tabele, które odwzorowują sekwencję znaków na sekwencje glifów przy użyciu technologii czcionek, takiej jak Czcionki TrueType (TTF) i Czcionka PostScript typu 1 . Należy pamiętać, że cała implementacja Java musi obsługiwać TTF. Korzystanie z innych technologii czcionek zależy od implementacji. Czcionka fizyczna zawiera nazwę taką jak Helvetica, Palatino, HonMincho , inne nazwy czcionek.
Właściwość czcionki fizycznej polega na tym, że wykorzystuje ona ograniczony zestaw systemów pisma, takich jak Znaki łacińskie lub tylko język japoński I Podstawowa łacina postacie. Zmiany konfiguracji mogą się różnić. Jeśli jakakolwiek aplikacja wymaga określonej czcionki, użytkownik może spakować tę czcionkę i utworzyć instancję za pomocą utwórz czcionkę() metoda klasy Java Font.
Czcionki logiczne
Java definiuje pięć logiczne rodziny czcionek Serif, SansSerif, o stałej szerokości, okno dialogowe, I Wejście dialogowe . Musi być obsługiwany przez środowisko JRE. Należy pamiętać, że środowisko JRE odwzorowuje nazwy czcionek logicznych na czcionki fizyczne, ponieważ nie są to rzeczywiste biblioteki czcionek. Zwykle implementacja mapowania zależy od ustawień regionalnych. Każda nazwa czcionki logicznej jest odwzorowywana na kilka czcionek fizycznych w celu uwzględnienia dużego zakresu znaków.
Na przykład komponenty AWT, takie jak Etykieta I Pole tekstowe używa wyłącznie czcionek logicznych.
komentarz PowerShell wielowierszowy
Czcionki i nazwy
Czcionka może mieć wiele twarzy, np. ciężką, regularną, średnią, ukośną, gotycką itp. Wszystkie czcionki mają podobny projekt typograficzny.
Obiekt Font ma trzy różne nazwy:
Klasa Java Font reprezentuje instancję kroju czcionki z kolekcji krojów czcionek, które znajdują się w zasobach systemowych systemu hosta. Przykładowe kroje czcionek to Arial Bold, Courier Bold Italic itp. Czcionka (każda różni się rozmiarem, stylem, transformacją i funkcją czcionki) może być powiązana z kilkoma obiektami Font.
Pola klasy czcionki
Modyfikator | Pole | Opis |
---|---|---|
statyczne wew | POGRUBIONY | Odważny styl. |
statyczne wew | CENTER_BASELINE | Linia bazowa używana w pismach ideograficznych, takich jak chiński, japoński i koreański, podczas układania tekstu. |
ciąg statyczny | DIALOG | Stała typu String dla kanonicznej nazwy rodziny czcionki logicznej „Dialog”. |
ciąg statyczny | DIALOG_INPUT | Stała String dla kanonicznej nazwy rodziny czcionki logicznej „DialogInput”. |
statyczne wew | WISZĄCA_BASELINE | Linia bazowa używana w Devanigiri i podobnych skryptach podczas układania tekstu. |
statyczne wew | ITALSKI | Stała stylu pisana kursywą. |
statyczne wew | UKŁAD_LEWY_TO_PRAWY | Flaga układuGlyphVector wskazująca, że tekst jest pisany od lewej do prawej, zgodnie z analizą BiDi. |
statyczne wew | LAYOUT_NO_LIMIT_CONTEXT | Flaga do układuGlyphVector wskazująca, że tekst w tablicy znaków po wskazanym limicie nie powinien być sprawdzany. |
statyczne wew | LAYOUT_NO_START_CONTEXT | Flaga układuGlyphVector wskazująca, że tekst w tablicy znaków przed wskazanym początkiem nie powinien być sprawdzany. |
statyczne wew | UKŁAD_PRAWY_TO_LEWY | Flaga układuGlyphVector wskazująca, że tekst jest pisany od prawej do lewej, zgodnie z analizą BiDi. |
ciąg statyczny | MONOPRZESTRZENI | Stała typu String dla kanonicznej nazwy rodziny czcionki logicznej „Monospaced”. |
ciąg statyczny | nazwa | Logiczna nazwa tej czcionki przekazana do konstruktora. |
statyczne wew | ZWYKŁY | Stała stylu prostego. |
pływak statyczny | Rozmiar punktu | Rozmiar punktowy tej czcionki w formacie zmiennoprzecinkowym. |
statyczne wew | ROMAN_BASELINE | Linia bazowa używana w większości pism rzymskich podczas układania tekstu. |
ciąg statyczny | BEZ SERIF | Stała typu String dla kanonicznej nazwy rodziny czcionki logicznej „SansSerif”. |
ciąg statyczny | SERIF | Stała typu String dla kanonicznej nazwy rodziny czcionki logicznej „Serif”. |
chroniony wew | rozmiar | Rozmiar punktowy tej czcionki, zaokrąglony do liczby całkowitej. |
chroniony wew | styl | Styl tej czcionki przekazany do konstruktora. |
statyczne wew | TRUETYPE_FONT | Zidentyfikuj zasób czcionki typu TRUETYPE. |
statyczne wew | TYP1_FONT | Zidentyfikuj zasób czcionki typu TYPE1. |
Konstruktorzy klas czcionek
Konstruktor | Opis |
---|---|
Czcionka (czcionka) | Tworzy nową Font na podstawie określonej czcionki. |
Czcionka (atrybuty mapy) | Tworzy nowy Font z określonymi atrybutami. |
Czcionka (nazwa ciągu, styl int, rozmiar int) | Tworzy nową czcionkę na podstawie określonej nazwy, stylu i rozmiaru punktu. |
Metody klas czcionek
Metody | Opis |
---|---|
canDisplay(znak c) | Sprawdza, czy ta czcionka ma glif dla określonego znaku. |
canDisplay(int codePoint) | Sprawdza, czy ta czcionka ma glif dla określonego znaku. |
canDisplayUpTo(char[] tekst, int początek, int limit) | Wskazuje, czy ta czcionka może wyświetlać znaki w określonym tekście, zaczynając od początku i kończąc na limicie. |
canDisplayUpTo(ścieżka CharacterIterator, int początek, int limit) | Wskazuje, czy ta czcionka może wyświetlać tekst określony przez iter, zaczynając od początku i kończąc na limicie. |
canDisplayUpTo(String ciąg) | Wskazuje, czy ta czcionka może wyświetlać określony ciąg. |
utwórzFont(int FontFormat, Plik FontFile) | Zwraca nową czcionkę przy użyciu określonego typu czcionki i określonego pliku czcionki. |
utwórzFont(intfontFormat,InputStreamfontStream) | Zwraca nową czcionkę przy użyciu określonego typu czcionki i danych wejściowych. |
createGlyphVector(FontRenderContext frc, char[] znaki) | Tworzy GlyphVector poprzez mapowanie znaków na glify jeden do jednego w oparciu o cmap Unicode w tej czcionce. |
createGlyphVector(FontRenderContext frc, CharacterIterator ci) | Tworzy GlyphVector poprzez mapowanie określonych znaków na glify jeden do jednego w oparciu o cmap Unicode w tej czcionce. |
createGlyphVector(FontRenderContext frc, int[] gliphCodes) | Tworzy GlyphVector poprzez mapowanie znaków na glify jeden do jednego w oparciu o cmap Unicode w tej czcionce. |
createGlyphVector(FontRenderContext frc, String str) | Tworzy GlyphVector poprzez mapowanie znaków na glify jeden do jednego w oparciu o cmap Unicode w tej czcionce. |
dekodować (ciąg znaków) | Zwraca czcionkę opisaną przez argument str. |
pochodnejFont(transformacja AffineTransform) | Tworzy nowy obiekt Font, replikując bieżący obiekt Font i stosując do niego nową transformację. |
pochodna czcionka (rozmiar zmiennoprzecinkowy) | Tworzy nowy obiekt Font poprzez replikację bieżącego obiektu Font i zastosowanie do niego nowego rozmiaru. |
pochodna czcionka (styl int) | Tworzy nowy obiekt Font, replikując bieżący obiekt Font i nadając mu nowy styl. |
pochodnąFont(styl int, trans AffineTransform) | Tworzy nowy obiekt Font, replikując ten obiekt Font i stosując nowy styl i transformację. |
pochodnąFont(styl int, rozmiar zmiennoprzecinkowy) | Tworzy nowy obiekt Font, replikując ten obiekt Font i stosując nowy styl i rozmiar. |
pochodnąFont(atrybuty mapy) | Tworzy nowy obiekt Font, replikując bieżący obiekt Font i stosując do niego nowy zestaw atrybutów czcionki. |
równa się (obiekt obiektu) | Porównuje ten obiekt Font z określonym obiektem. |
pobierzAtrybuty() | Zwraca mapę atrybutów czcionki dostępnych w tej czcionce. |
getAvailableAttributes() | Zwraca klucze wszystkich atrybutów obsługiwanych przez tę czcionkę. |
getBaselineFor(znak c) | Zwraca linię bazową odpowiednią do wyświetlenia tego znaku. |
pobierz rodzinę() | Zwraca nazwisko tej czcionki. |
getFamily(Ustawienia regionalne l) | Zwraca nazwę rodziny tej czcionki, zlokalizowaną dla określonych ustawień regionalnych. |
getFont(atrybuty mapy) | Zwraca czcionkę odpowiednią do atrybutów. |
getFont(Ciąg nm) | Zwraca obiekt Font z listy właściwości systemu. |
getFont(String nm, czcionka) | Pobiera określoną czcionkę z listy właściwości systemu. |
pobierzNazwęCzcionki() | Zwraca nazwę czcionki tej czcionki. |
getFontName(Ustawienia regionalne l) | Zwraca nazwę czcionki Font, zlokalizowaną dla określonych ustawień regionalnych. |
getItalicAngle() | Zwraca kąt pochylenia tej czcionki. |
getLineMetrics(char[] chars, int BeginIndex, int limit, FontRenderContext frc) | Zwraca obiekt LineMetrics utworzony z określonymi argumentami. |
getLineMetrics(CharacterIterator ci, int BeginIndex, int limit, FontRenderContext frc) | Zwraca obiekt LineMetrics utworzony z określonymi argumentami. |
getLineMetrics(String str, FontRenderContext frc) | Zwraca obiekt LineMetrics utworzony z określonym ciągiem i FontRenderContext. |
getLineMetrics(String str, int BeginIndex, int limit, FontRenderContext frc) | Zwraca obiekt LineMetrics utworzony z określonymi argumentami. |
getMaxCharBounds(FontRenderContext frc) | Zwraca granice znaku z maksymalnymi granicami zdefiniowanymi w określonym FontRenderContext. |
getMissingGlyphCode() | Zwraca gliphCode, który jest używany, gdy ta czcionka nie ma glifu dla określonego punktu kodowego Unicode. |
pobierzNazwę() | Zwraca logiczną nazwę tej czcionki. |
getNumGlyphs() | Zwraca liczbę glifów w tej czcionce. |
getPeer() | Renderowanie czcionek jest teraz niezależne od platformy. |
pobierz nazwę PSNazwa() | Zwraca nazwę postscriptową tej czcionki. |
pobierzRozmiar() | Zwraca rozmiar punktowy tej czcionki, zaokrąglony do liczby całkowitej. |
pobierzRozmiar2D() | Zwraca rozmiar punktowy tej czcionki w wartości zmiennoprzecinkowej. |
getStringBounds(char[] chars, int BeginIndex, int limit, FontRenderContext frc) | Zwraca granice logiczne określonej tablicy znaków w określonym FontRenderContext. |
getStringBounds(CharacterIterator ci, int BeginIndex, int limit, FontRenderContext frc) | Zwraca logiczne granice znaków indeksowanych w określonym CharacterIterator w określonym FontRenderContext. |
getStringBounds(String str, FontRenderContext frc) | Zwraca granice logiczne określonego ciągu w określonym FontRenderContext. |
getStringBounds(String str, int BeginIndex, int limit, FontRenderContext frc) | Zwraca granice logiczne określonego ciągu w określonym FontRenderContext. |
getStyle() | Zwraca styl tej czcionki. |
getTransform() | Zwraca kopię transformacji powiązanej z tą czcionką. |
hashCode() | Zwraca kod skrótu dla tej czcionki. |
maLayoutAttributes() | Zwraca wartość true, jeśli ta czcionka zawiera atrybuty wymagające dodatkowego przetwarzania układu. |
maUniformLineMetrics() | Sprawdza, czy ta czcionka ma jednolite metryki linii. |
jest pogrubiony() | Wskazuje, czy styl tego obiektu Font jest POGRUBIONY. |
italski() | Wskazuje, czy styl tego obiektu Font jest kursywą. |
jestZwykły() | Wskazuje, czy styl tego obiektu czcionki jest ZWYKŁY. |
jest przekształcona() | Wskazuje, czy ten obiekt Font ma transformację wpływającą na jego rozmiar oprócz atrybutu Size. |
układGlyphVector(FontRenderContext frc, char[] tekst, int start, int limit, int flagi) | Zwraca nowy obiekt GlyphVector, wykonując, jeśli to możliwe, pełny układ tekstu. |
doString() | Konwertuje ten obiekt Font na reprezentację String. |
Zobaczmy przykład czcionki Java.
Przykład JavaFont.java
import java.applet.Applet; import java.awt.Font; import java.awt.Graphics; public class JavaFontExample extends Applet { public void paint(Graphics gph) { //creating a constructor of the font class and passing name, style, and size of the font //we can change these three parameters accordingly Font font= new Font('Courier', Font.PLAIN, 20); //setting font by invoking the setFont() method gph.setFont(font); gph.drawString('Javatpoint is the best learning platform.', 12, 45); } }
Aby uruchomić powyższy program, postępuj zgodnie z poniższymi krokami:
I. Skopiuj i wklej powyższy kod i zapisz plik pod nazwą Przykład JavaFont.java.
II. Utwórz plik HTM i napisz następujący kod.
Przykład czcionki Java.html
świetny język komputerowy
iii. Otwórz wiersz poleceń i wykonaj następujące polecenia:
JavaFontExample.java appletviewer JavaFontExample.java
Wyjście 1:
Aby uzyskać następujące dane wyjściowe, wprowadź zmiany w następującej instrukcji:
Font font= new Font('Monospaced', Font.ITALIC, 30); //name, face and size of font is changed
Wyjście 2: