sz.setWidth( sz.getWidth( ) + ins.getLeft( ) + ins.getRight( ) ); sz.scale( 72d / xs.getDpiResolution( ) );
sz.setWidth( sz.getWidth( ) + ins.getLeft( ) + ins.getRight( ) );
	public final Size getPreferredSize( IDisplayServer xs, Chart cm,			RunTimeContext rtc ) throws ChartException	{		BoundingBox bb = null;		final String sPreviousValue = getLabel( ).getCaption( ).getValue( );		getLabel( ).getCaption( )				.setValue( rtc.externalizedMessage( sPreviousValue ) );		try		{			bb = Methods.computeBox( xs, IConstants.TOP, getLabel( ), 0, 0 );		}		catch ( IllegalArgumentException uiex )		{			throw new ChartException( ChartEnginePlugin.ID,					ChartException.GENERATION,					uiex );		}		finally		{			getLabel( ).getCaption( ).setValue( sPreviousValue );		}		final Size sz = SizeImpl.create( bb.getWidth( ), bb.getHeight( ) );		final Insets ins = getInsets( );		sz.setHeight( sz.getHeight( ) + ins.getTop( ) + ins.getBottom( ) );		sz.setWidth( sz.getWidth( ) + ins.getLeft( ) + ins.getRight( ) );		sz.scale( 72d / xs.getDpiResolution( ) );		return sz;	}