From 7e63d1c859d56d4b9b16a3f0170be2cfebbb9829 Mon Sep 17 00:00:00 2001 From: Michael Bayne Date: Fri, 1 Apr 2005 22:33:42 +0000 Subject: [PATCH] Avoid using the AffineTransform font derivation mechanism on MacOS X where it is quite buggy. There are still issues with non-affine transformed fonts, but they are lesser. git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3456 542714f4-19e9-0310-aa3c-eee0fc999fb1 --- .../com/threerings/puzzle/client/PuzzleBoardView.java | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/java/com/threerings/puzzle/client/PuzzleBoardView.java b/src/java/com/threerings/puzzle/client/PuzzleBoardView.java index b4b62aa28..3174895bf 100644 --- a/src/java/com/threerings/puzzle/client/PuzzleBoardView.java +++ b/src/java/com/threerings/puzzle/client/PuzzleBoardView.java @@ -33,6 +33,7 @@ import javax.swing.UIManager; import com.samskivert.swing.Label; import com.samskivert.swing.util.SwingUtil; +import com.samskivert.util.RunAnywhere; import com.samskivert.util.StringUtil; import com.threerings.media.VirtualMediaPanel; @@ -514,8 +515,14 @@ public abstract class PuzzleBoardView extends VirtualMediaPanel _fonts = new Font[FONT_SIZES.length]; for (int ii = 0; ii < _fonts.length; ii++) { double scale = FONT_SIZES[ii]/FONT_SIZES[0]; - _fonts[ii] = ofont.deriveFont( - AffineTransform.getScaleInstance(scale * 1.1d, scale)); + // MacOS X Java currently doesn't dig scaling fonts with + // affine transformations + if (RunAnywhere.isMacOS()) { + _fonts[ii] = ofont.deriveFont((float)FONT_SIZES[ii]); + } else { + _fonts[ii] = ofont.deriveFont( + AffineTransform.getScaleInstance(scale * 1.1d, scale)); + } } } }