Ho un'applicazione Java desktop su cui sto lavorando e sto utilizzando JDK 6 per lo sviluppo tramite IDE. Io uso il suggerimento di rendering VALUE_FRACTIONALMETRICS_ON
insieme ad altri suggerimenti per migliorare il rendering del testo in JLabels. Questi suggerimenti funzionano magnificamente su JVM 1.6, ma di recente ho notato che sembra ignorare completamente il VALUE_FRACTIONALMETRICS_ON
quando eseguo l'app con un JRE 1.7 C'è qualcosa che sto facendo male qui che fa sì che Java 7 ignori questi suggerimenti?Come eseguire il rendering del testo utilizzando FRACTIONALMETRICS in Java 7
lblDate = new ATimeLabel(ATimeLabel.DATE_LETTERS) {
private static final long serialVersionUID = 1L;
@Override
protected void paintComponent(Graphics g) {
Graphics2D g2d = (Graphics2D) g;
g2d.setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING,
RenderingHints.VALUE_TEXT_ANTIALIAS_ON);
g2d.setRenderingHint(RenderingHints.KEY_RENDERING,
RenderingHints.VALUE_RENDER_QUALITY);
g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
RenderingHints.VALUE_ANTIALIAS_ON);
g2d.setRenderingHint(RenderingHints.KEY_FRACTIONALMETRICS,
RenderingHints.VALUE_FRACTIONALMETRICS_ON);
super.paintComponent(g2d);
}
};
FRACTIONALMETRICS ha la più grande effetto visivo notevole sul testo in modo da ottenere che il lavoro è quello che sto cercando di fare.
ecco un confronto schermata di quello che sembra quando si esegue l'applicazione dal mio IDE (Sinistra) che usa Java 6 e quando faccio doppio clic sul file Jar sua auto (destro), che usa il mio sistemi di JRE, Java 7. (ho anche temporanea aggiunto il bordo rosso per dimostrare che il metodo paint funziona)
Qualsiasi aiuto sarebbe molto apprezzato.
Questo non sembra funzionare. Non sto cercando di renderlo più spesso, sto cercando di renderlo nitido e pulito. Questo fa sembrare l'immagine giusta. Sto cercando di farlo sembrare l'immagine a sinistra, che è un po 'più sottile –
sto cercando il rendering sub-pixel di caratteri. Ma quello sembra essere Java 6 solo ... –