private void drawXObject( PDImageXObject xobject, PDResources resources, OutputStream os,
float x, float y, float width, float height ) throws IOException
{
// This is similar to PDPageContentStream.drawXObject()
COSName xObjectId = resources.add(xobject);
appendRawCommands( os, SAVE_GRAPHICS_STATE );
appendRawCommands( os, formatDecimal.format( width ) );
appendRawCommands( os, SPACE );
appendRawCommands( os, formatDecimal.format( 0 ) );
appendRawCommands( os, SPACE );
appendRawCommands( os, formatDecimal.format( 0 ) );
appendRawCommands( os, SPACE );
appendRawCommands( os, formatDecimal.format( height ) );
appendRawCommands( os, SPACE );
appendRawCommands( os, formatDecimal.format( x ) );
appendRawCommands( os, SPACE );
appendRawCommands( os, formatDecimal.format( y ) );
appendRawCommands( os, SPACE );
appendRawCommands( os, CONCATENATE_MATRIX );
appendRawCommands( os, SPACE );
appendRawCommands( os, "/" );
appendRawCommands( os, xObjectId.getName() );
appendRawCommands( os, SPACE );
appendRawCommands( os, XOBJECT_DO );
appendRawCommands( os, SPACE );
appendRawCommands( os, RESTORE_GRAPHICS_STATE );
}