|
@@ -26,11 +26,12 @@ import java.awt.Color;
|
26
|
26
|
import java.awt.Dimension;
|
27
|
27
|
import java.awt.Graphics;
|
28
|
28
|
import java.awt.Graphics2D;
|
29
|
|
-import java.awt.Rectangle;
|
|
29
|
+import java.awt.Toolkit;
|
30
|
30
|
import java.awt.geom.Rectangle2D;
|
31
|
31
|
import java.awt.font.LineMetrics;
|
32
|
32
|
import java.util.ArrayList;
|
33
|
33
|
|
|
34
|
+import java.util.Map;
|
34
|
35
|
import javax.swing.JComponent;
|
35
|
36
|
import javax.swing.SwingConstants;
|
36
|
37
|
|
|
@@ -250,7 +251,11 @@ public class JWrappingLabel extends JComponent {
|
250
|
251
|
// otherwise we just update top
|
251
|
252
|
if (!getPreferred) {
|
252
|
253
|
LineMetrics metrics = g.getFont().getLineMetrics(drawLine, g2.getFontRenderContext());
|
253
|
|
-
|
|
254
|
+
|
|
255
|
+ final Map desktopHints = (Map) Toolkit.getDefaultToolkit().getDesktopProperty("awt.font.desktophints");
|
|
256
|
+ if (desktopHints != null) {
|
|
257
|
+ g2.addRenderingHints(desktopHints);
|
|
258
|
+ }
|
254
|
259
|
// However, we need to take into account the overhang in characters like y and g
|
255
|
260
|
int y = top + (int)Math.round(bounds.getHeight() - metrics.getDescent());
|
256
|
261
|
|