Portál AbcLinuxu, 8. května 2025 20:44
-Dswing.aatext=true -Dswing.plaf.metal.controlFont="DejaVu Sans-8"
, ale jde mi o to, jak to nastavit globálně pro všechny aplikace najednou. Pokud aplikace spustím pod KDE či gnome, mají nastavenou správnou velikost písma, je zapnuto vyhlazení. Problém je, pokud aplikaci spustím třeba pod i3 či openboxem, písmo není vyhlazené.
Dalším problémem je pokud zapnu druhý monitor, písma všech java aplikací jsou pak strašně veliká. Vypadá to, že špatně vypočítají DPI kdy berou velikost celého root okna a velikosti v milimetrech jednoho monitoru, co dostanou od X. Můžu nastavit i nějak DPI?
export _JAVA_OPTIONS="-Dawt.useSystemAAFontSettings=lcd -Dswing.aatext=true -Dswing.plaf.metal.controlFont=\"Dialog-plain-12\" -Dswing.plaf.metal.userFont=\"Dialog-plain-12\""Bohužel to funguje jen pro metal L&F (který sice většinou používám, ale některý aplikace rádi hardcódují alternativní L&F). Navíc když nastavím _JAVA_OPTIONS, tak mi každá aplikace na stderr při startu vypíše
Picked up _JAVA_OPTIONS -Dawt.useSystemAAFontSettings=lcd -Dswing.aatext=true -Dswing.plaf.metal.controlFont="Dialog-plain-12" -Dswing.plaf.metal.userFont="Dialog-plain-12"což je pro mě nepřijatelné. Chtělo by to nastavit v nějakým konfiguráku. Jinak to s tím velkým písmem na více monitorech, způsoboval předchozí "Aero" L&F zvolený ve FreeRapid Downloaderu, s Metalem mi to nedělá.
/etc/java-7-openjdk/swing.properties
, udělal symlink v /usr/lib/jvm/java-7-openjdk/jre/lib
(jako jsou tam symlinkovaný ty properties soubory z balíčku). strace
mi ukáže, že to ten soubor čte, ale nějak to nic z toho neaplikuje. Když jsem hledal swing.properties ve vyhledávači, tak jsem akorát našel, že by to snad mělo číst swing.defaultlaf, vypadá to, že nic jiného nejde.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.