Ich habe eine Entwicklungsumgebung in Java gebaut (als kleines Forschungsprojekt). Als Teil davon, baute ich eine benutzerdefinierte Textkomponente, die den Text selbst mit Graphics2D wie so zieht:Warum sind Schriften in Java 1.7 anders als 1.6?
g2.drawString("some text", 100, 100);
Alles hat gut funktioniert Dinge in Eclipse entwickelt 1.6 unter Verwendung von (ich nehme diese von Apple zur Verfügung gestellt wird), bis ich verpackt alles auf und lief in Java 1.7 (von Oracle zur Verfügung gestellt). Offensichtlich sind Schriften in Entwicklungsumgebungen ziemlich wichtig, daher war ich nicht erfreut, die Ergebnisse in 1.7 zu sehen.
Ich habe versucht, benutzerdefinierte Schriftarten verpacken, aber sie alle erscheinen körnig und erodiert. Der obige Vergleich ist nicht schlecht, aber einige Schriften (wie Monaco) sehen schrecklich aus.
Ich vermute, das hat damit zu tun, wie Apple Dinge in Quartz hakt. Aber gibt es einen Weg, die Dinge zu verbessern, damit es auf anderen Systemen nicht schrecklich aussieht? Hat jemand eine Strategie dafür?
Update: Dies ist der Vergleich in Monaco:
und ein vergrößertes Vergleich der C (in paintcomponent) in Monaco (1,7 auf der linken Seite, 1.6 rechts). Beachten Sie, dass ich die Schrift von einer lokalen ttf Datei bin Laden mit:
GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
InputStream is = Thread.currentThread().getContextClassLoader().getResourceAsStream("monaco.ttf");
Font customFont = null;
try
{
customFont = Font.createFont(Font.TRUETYPE_FONT, is);
customFont = customFont.deriveFont(16.0f).deriveFont(Font.BOLD);
is.close();
ge.registerFont(customFont);
} catch (FontFormatException e1)
{
e1.printStackTrace();
} catch (IOException e1)
{
e1.printStackTrace();
}
this.setFont(customFont);
Beachten Sie auch, dass Anti-Aliasing eingeschaltet werden:
g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
RenderingHints.VALUE_ANTIALIAS_ON);
Haben sie die gleiche Schriftart verwenden? –
vielleicht verwenden sie eine andere Standardschrift? – JohnnyAW
Ähnliche Fragen hier gestellt: http://superuser.com/questions/112326/why-do-the-fonts-in-the-java-application-im-running-look-different-in-mac-os-x – Goibniu