// because of the moved 0,0-reference, we have to shear in the opposite direction
textPos.setValue(0, 1, (-1)*textPos.getValue(0, 1));
textPos.setValue(1, 0, (-1)*textPos.getValue(1, 0));
AffineTransform at = textPos.createAffineTransform();
graphics.setClip(getGraphicsState().getCurrentClippingPath());
font.drawString( text.getCharacter(), graphics, text.getFontSize(), at, x, y );
}
catch( IOException io )
{
io.printStackTrace();
}