Bug 141248 Script: Set axis title background color, axis title can be covered.
Script: Set axis title background color, axis title can be covered. Steps: 1.Create a bar chart 2.Script:function beforeDrawAxisTitle(axis, title, scriptContext) { importPackage(Packages.org.eclipse.birt.chart.model.attribute); importPackage(Packages.org.eclipse.birt.chart.model.attribute.impl); { if (axis.getType() == AxisType.LINEAR_LITERAL) title.setVisible(false);} title.getCaption().getColor( ).set( 208, 32, 0); title.getCaption().getFont().setItalic(true); title.getCaption().getFont().setRotation(30); title.getCaption().getFont().setStrikethrough(true); title.getCaption().getFont().setSize(14); title.getCaption().getFont().setName("Arial"); title.getOutline().setVisible(true); title.getOutline().setThickness(3); title.setBackground(ColorDefinitionImpl.ORANGE()); } 3.Preview Actual Results: 1.Axis title can be covered Expected Results: 1.Axis title is visible.
chart/org.eclipse.birt.chart.device.svg/src/org/eclipse/birt/chart/device/svg/SVGTextRenderer.java
* @param ipr
	 * @param iLabelPosition
	 *            IConstants. LEFT, RIGHT, ABOVE or BELOW
	 * @param lo
	 *            POINT WHERE THE CORNER OF THE ROTATED RECTANGLE (OR EDGE
	 *            CENTERED) IS RENDERED
	 * @param la
	 * @throws RenderingException
	 */
	public final void renderTextAtLocation( IPrimitiveRenderer ipr,
			int iLabelPosition, Location lo, Label la ) throws ChartException
	{
		final ColorDefinition cdText = la.getCaption( ).getColor( );
		if ( cdText == null )
		{
			throw new ChartException( ChartDeviceExtensionPlugin.ID,
					ChartException.RENDERING,
					"exception.undefined.text.color", 
					Messages.getResourceBundle( _sxs.getULocale( ) ) );
		}
		final Graphics2D g2d = (Graphics2D) ( (IDeviceRenderer) ipr ).getGraphicsContext( );
		g2d.setFont( (java.awt.Font) _sxs.createFont( la.getCaption( )
				.getFont( ) ) );
		switch ( iLabelPosition )
		{
			case ABOVE :
				if ( ChartUtil.isShadowDefined( la ) )
				{
					showTopValue( ipr, lo, la, true );
				}