Java FontMetrics maxStringPixelWidth(String[] strings, FontMetrics fm)

Here you can find the source of maxStringPixelWidth(String[] strings, FontMetrics fm)

Description

max String Pixel Width

License

Apache License

Parameter

Parameter Description
strings an array of strings whose pixels widths to compare
fm FontMetrics object for the Component or Graphics.

Return

the largest pixel width of a string in the strings array.

Declaration

public static int maxStringPixelWidth(String[] strings, FontMetrics fm) 

Method Source Code

//package com.java2s;
/*// w w  w  . j a  v  a2 s. c o m
 * The baseCode project
 * 
 * Copyright (c) 2006 University of British Columbia
 * 
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *       http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 *
 */

import java.awt.FontMetrics;

public class Main {
    /**
     * @param strings an array of strings whose pixels widths to compare
     * @param fm FontMetrics object for the Component or Graphics.
     * @return the largest pixel width of a string in the <code>strings</code> array.
     */
    public static int maxStringPixelWidth(String[] strings, FontMetrics fm) {

        // the number of chars in the longest string
        int maxWidth = 0;
        int width;
        String s;
        for (int i = 0; i < strings.length; i++) {
            s = strings[i];
            width = stringPixelWidth(s, fm);
            if (maxWidth < width) {
                maxWidth = width;
            }
        }

        return maxWidth;
    }

    /**
     * @param text the string whose pixel width is to be measured
     * @param fm FontMetrics object for the Component or Graphics.
     * @return the pixel width of the string for the specified font.
     */
    public static int stringPixelWidth(String text, FontMetrics fm) {
        return fm.charsWidth(text.toCharArray(), 0, text.length());

    }
}

Related

  1. getStringRect(Font f, String s)
  2. getTextCenterShear(final FontMetrics fm, final String text)
  3. getTextCenterShearX(final FontMetrics fm, final String text)
  4. limitWithEllipsis(String str, Font font, int maxWidth, Component c)
  5. maxSize(Component component, String maxString)
  6. paintString(String s, Graphics2D g2, Rectangle2D rect, float horizontal, float vertical)
  7. render(Graphics2D graphics, String str, Rectangle2D box, double xalign, double yalign)
  8. setComponentSize(Component component, int rows, int columns)
  9. setSizedFont(Graphics g, String text, float maxFontSize, int maxWidth)