Graphics2D g2 = (Graphics2D) g; AffineTransform fontAT = new AffineTransform(); fontAT.setToRotation(Math.PI * 3.0f / 2.0f); FontRenderContext frc = g2.getFontRenderContext(); Font theDerivedFont = font.deriveFont(fontAT); TextLayout tstring = new TextLayout(text, theDerivedFont, frc); tstring.draw(g2, x, y);