Java examples for 2D Graphics:Font
get Font Advance
/*//from w w w. j ava 2 s . c o m * Copyright (C) 2010-2015 JPEXS, All rights reserved. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 3.0 of the License, or (at your option) any later version. * * This 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 * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library. */ //package com.java2s; import java.awt.Font; import java.awt.font.FontRenderContext; import java.awt.font.GlyphVector; import javax.swing.JPanel; public class Main { public static float getFontAdvance(Font font, char ch) { return createGlyphVector(font, ch).getGlyphMetrics(0).getAdvanceX(); } public static GlyphVector createGlyphVector(Font font, char ch) { return font.createGlyphVector(getFontRenderContext(font), new char[] { ch }); } private static FontRenderContext getFontRenderContext(Font font) { return (new JPanel()).getFontMetrics(font).getFontRenderContext(); } }