Java a grafický výstup

Arthur

  • ***
  • 174
    • Zobrazit profil
    • E-mail
Java a grafický výstup
« kdy: 10. 02. 2013, 21:32:05 »
Zdravím

mám pár programů v Javě využívající Swing+AWT, a v podstatě mi všechno funguje dobře až na tyto maličkosti:

1) font rendering

Defaultní font-rendering v linuxu (alespoň v ubuntu+gnome) funguje zcela optimálně. Naopak např. ve WinXP nic moc.  Umím to nastavit pomocí System.setProperty("awt.useSystemAAFontSettings"...,  ale všechna nastavení vypadají vždy hůř než v linuxu - zdá se že to provádí jen smoothing, ale ne už hinting - ten se tam nedá nijak nastavit a v linuxu to zřejmě dělá defaultně.

Otázka 1:  kterak lze nastavit globálně font hinting ?  Vygoogloval jsem akorát fontRendering hints, ale to je zřejmě něco jiného ...
Otázka 2:  kde bych našel ucelený seznam awt properties ?

2) chování javax.swing.Canvas

kreslím na canvas, všechno ok,  ale když  minimalizuju a obnovím okno, tak se obsah canvasu smaže a musím to znovu vykreslit. Ve WinXP je dokonce obsah canvasu vygumován jiným oknem přejíždějícím nad ním (přesně v těch místech, kde se oknem přejelo).
Nepředpokládám, že je nutné programově tyto události detekovat a znovuvykreslovat obsah canvasu...  takže tedy co s tím ?

díky


Re:Java a grafický výstup
« Odpověď #1 kdy: 15. 02. 2013, 21:18:12 »
2) chování javax.swing.Canvas

kreslím na canvas, všechno ok,  ale když  minimalizuju a obnovím okno, tak se obsah canvasu smaže a musím to znovu vykreslit. Ve WinXP je dokonce obsah canvasu vygumován jiným oknem přejíždějícím nad ním (přesně v těch místech, kde se oknem přejelo).
Nepředpokládám, že je nutné programově tyto události detekovat a znovuvykreslovat obsah canvasu...  takže tedy co s tím ?

díky

Nevykresluj obsah rovnu na canvas, vytvoř si buffer a na canvas kresli z bufferu.