awt.FontMetrics GetMetrics(FontStyle style)
 {
     if ((_lastStyle != style) || (_fontMetrics == null))
     {
         java.util.Map attrib = Font.DeriveStyle(FamilyFont.getAttributes(), style, true);
         attrib.put(TextAttribute.SIZE, new java.lang.Float((float)(UnitsPerEm << 1)));
         _fontMetrics = Container.getFontMetrics(FamilyFont.deriveFont(attrib));
     }
     return(_fontMetrics);
 }
		/// <summary>
		/// Compute the width of the string using a font with the specified
		/// "metrics" (sizes).
		/// </summary>
		static public int computeStringWidth(FontMetrics @fm, string @str)
		{
			return default(int);
		}
		/// <summary>
		/// Compute and return the location of the icons origin, the
		/// location of origin of the text baseline, and a possibly clipped
		/// version of the compound labels string.
		/// </summary>
		public string layoutCompoundLabel(JComponent @c, FontMetrics @fm, string @text, Icon @icon, int @verticalAlignment, int @horizontalAlignment, int @verticalTextPosition, int @horizontalTextPosition, Rectangle @viewR, Rectangle @iconR, Rectangle @textR, int @textIconGap)
		{
			return default(string);
		}
 public static Rectangle2D getTextBounds(string text, Graphics2D g2, FontMetrics fm)
 {
   Rectangle2D rectangle2D;
   if (TextUtilities.useFontMetricsGetStringBounds)
   {
     rectangle2D = fm.getStringBounds(text, (Graphics) g2);
     LineMetrics lineMetrics = fm.getFont().getLineMetrics(text, g2.getFontRenderContext());
     rectangle2D.setRect(((RectangularShape) rectangle2D).getX(), ((RectangularShape) rectangle2D).getY(), ((RectangularShape) rectangle2D).getWidth(), (double) lineMetrics.getHeight());
   }
   else
   {
     double num1 = (double) fm.stringWidth(text);
     double num2 = (double) fm.getHeight();
     if (TextUtilities.__\u003C\u003Elogger.isDebugEnabled())
       TextUtilities.__\u003C\u003Elogger.debug((object) new StringBuffer().append("Height = ").append(num2).toString());
     rectangle2D = (Rectangle2D) new Rectangle2D.Double(0.0, (double) -fm.getAscent(), num1, num2);
   }
   return rectangle2D;
 }
		awt.FontMetrics GetMetrics(FontStyle style) {
			if ((_lastStyle != style) || (_fontMetrics == null)) {	
				java.util.Map attrib = Font.DeriveStyle( FamilyFont.getAttributes(), style, true);
				attrib.put(TextAttribute.SIZE, new java.lang.Float((float)(UnitsPerEm<<1)));
				_fontMetrics = Container.getFontMetrics( FamilyFont.deriveFont( attrib ) );
			}
			return _fontMetrics;
		}