Java program + fontok

Fórumok

Tervezés alatt egy JAVA program, amely True Type fontokat használ.

1. A kérdés a következő: Linux alatt NEM ROOT-KÉNT hogyan installáljon fontokat akár a Java, akár az X fontok közé, vagy máshová, ahonnan majd használni tudja?

2. kérdés: E program applet változata tud-e használni/bemásolni valahová valahogyan fontokat, ami nincs a rendszerben, de működéséhez szükséges?

(nem vagyok Java programozó, a kérdést közvetítettem)

Hozzászólások

1. nem kell installálnod, pl belepakolod a jarba és már használhatod is. Vagy teheted bárhova, ahol látja, akár az install könyvtárba, vagy bárhova.
2. applet változat kb ugyanez, odateszed mellé a szerveren, hogy elérje, és kész. Helyi filerendszerre nem fogja tudni felírni magának, de nincs is rá szükség.

1. bárhova, ahol megtalálja. De lehet a /home/akarki/programom alatt is, ha megmondod neki, hogy ott van. És onnan tudja, hogy megmondod neki, hogy ott van :-))

Például így, ahol az első rendszerfontot használ, a második jar-ban levőt:

Font font = new Font(fontname, fonttype, fontsize);
vagy
Font font = Font.createFont(Font.TRUETYPE_FONT,getClass().getResourceAsStream(fontname)).deriveFont(fonttype,fontsize);

2. ha megmondod neki, hogy onnan "szívja" be, akkor onnan fogja :-) (ugyanúgy, ahogy a többi részét, classokat, egyebeket)

De ha úgysem Te fogod implementálni, akkor lehet, hogy annak kellene utánanéznie, aki csinálni fogja :-)

1. Kérlek pontosítsd a "megtalalja" fogalmát. A CLASSPATH-beli pathokba vagy a PATH-beli pathokba rakhatom? Vagy máshová?
2. Hasonló a problémám a "megmondod neki"-vel. Appletnél valahova le kell töltenie lokálisan a ttf fájlt, nem? Úgy érted, hogy a szerveren "megtalálható" (PATH-ban levő) ttf-et automatikusan leszívja az applet? S ha leszívja, akkor hova teszi (akár csak ideiglenesen is)? Vagy arról van szó, hogy belerakom a jarba a ttf-et, és az applettel együtt leszippantja? És ha a jar-ba kell berakni, akkor abban van valami konvenció, hogy hova?

1.-2.: classpath, vagy teljes elérési útvonal, ez jar-ra is érvényes, lehet, hogy van rá valami konvenció, de oda teszed, ahova jól esik. A második példában a második paraméter egy InputStream, de az adatot onnan veszed, ahonnan csak akarod, java application esetén ez lehet file, de töltheted netről is, olvashatod magából a jar fileból, vagy akár konzolról is, ha nagyon elvadult dolgot akarsz csinálni :-)

És persze, valahova le kell töltenie, mondjuk memóriába :-) de Neked ehhez semmi közöd, mint ahogy azt sem tudod, hogy a heap területén hova teszi az objektumaidat.

Szerintem a legegyszerűbb, ha kipróbáljátok, hogyan is működik, abból lehet a legjobban tanulni :-)