Java Swing Font Metrics getDefaultLabelFontMetrics()

Here you can find the source of getDefaultLabelFontMetrics()

Description

Returns default label font metrics.

License

Open Source License

Return

default label font metrics

Declaration

public static FontMetrics getDefaultLabelFontMetrics() 

Method Source Code


//package com.java2s;
/*//from www  .  j a  v a 2 s.  c om
 * This file is part of WebLookAndFeel library.
 *
 * WebLookAndFeel library is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 *
 * WebLookAndFeel library is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with WebLookAndFeel library.  If not, see <http://www.gnu.org/licenses/>.
 */

import javax.swing.*;

import java.awt.*;

public class Main {
    /**
     * Label for default system font retrieval.
     */
    private static JLabel label = null;

    /**
     * Returns default label font metrics.
     * This method might be used as a hack with other L&amp;Fs to retrieve system default font metrics for simple text.
     *
     * @return default label font metrics
     */
    public static FontMetrics getDefaultLabelFontMetrics() {
        if (label == null) {
            label = new JLabel();
        }
        return label.getFontMetrics(label.getFont());
    }

    /**
     * Returns the FontMetrics for the current Font of the passed in Graphics.
     * This method is used when a Graphics is available, typically when painting.
     * If a Graphics is not available the JComponent method of the same name should be used.
     * <p/>
     * This does not necessarily return the FontMetrics from the Graphics.
     *
     * @param c JComponent requesting FontMetrics, may be null
     * @param g Graphics Graphics
     */
    public static FontMetrics getFontMetrics(final JComponent c, final Graphics g) {
        return getFontMetrics(c, g, g.getFont());
    }

    /**
     * Returns the FontMetrics for the specified Font.
     * This method is used when a Graphics is available, typically when painting.
     * If a Graphics is not available the JComponent method of the same name should be used.
     * <p/>
     * This does not necessarily return the FontMetrics from the Graphics.
     *
     * @param c    JComponent requesting FontMetrics, may be null
     * @param g    Graphics Graphics
     * @param font Font to get FontMetrics for
     */
    public static FontMetrics getFontMetrics(final JComponent c, final Graphics g, final Font font) {
        if (c != null) {
            return c.getFontMetrics(font);
        } else {
            return g.getFontMetrics(font);
        }
    }
}

Related

  1. drawLine(Graphics g, FontMetrics fm, Rectangle rect, String text, int hAlign, int y, int mnemonic)
  2. getBreakLocation(Segment s, FontMetrics metrics, int x0, int x, TabExpander e, int startOffset)
  3. getClippedText(String text, FontMetrics fm, int maxWidth)
  4. getClippedText(String text, FontMetrics fm, int maxWidth)
  5. getClippedText(String text, FontMetrics fm, int maxWidth)
  6. getFontMetrics(final JComponent c, final Graphics g)
  7. getFontMetrics(Font font)
  8. getFontMetrics(Font font)
  9. getFontMetrics(Font font)