Ich habe eine Desktop-Java-Anwendung, an der ich arbeite und habe JDK 6 für die Entwicklung über IDE verwendet. Ich verwende den Rendering-Hinweis VALUE_FRACTIONALMETRICS_ON
zusammen mit anderen Hinweisen, um Text in JLabels besser zu rendern. Diese Hinweise funktionieren wunderbar auf JVM 1.6, aber ich habe kürzlich bemerkt, dass es die VALUE_FRACTIONALMETRICS_ON
vollständig ignoriert, wenn ich die App mit einem JRE 1.7 ausführe. Gibt es etwas, das ich hier falsch mache, das Java 7 diese Hinweise ignoriert?Rendern von Text mit 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 hat den größten spürbaren visuellen Effekt auf Text, so dass an der Arbeit ist das, was ich zu tun, bin auf der Suche nach.
hier ist ein Screenshot-Vergleich von, wie es aussieht, wenn ich die App von meinem IDE ausführen (Left), die Java verwendet 6, und wenn ich das Glas seiner Selbst Doppelklick auf Datei (Recht), die mein verwendet Systeme JRE, Java 7. (ich habe auch vorübergehend den roten Rahmen, um zu zeigen, dass die Farbe Methode funktioniert)
Jede Hilfe sehr geschätzt würde.
Dies scheint nicht zu funktionieren. Ich will es nicht dicker machen, ich will es scharf und sauber machen. Das sieht aus wie das richtige Bild. Ich suche, es wie das linke Bild aussehen, die etwas schlanker ist –
Ich suche nach Sub-Pixel-Rendering von Schriftarten. Aber das scheint nur Java 6 zu sein ... –