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/SVGGraphics2D.java
if ( style == null )
			style = ""; 
		if ( color != null )
		{
			style += "stroke:" + serializeToString( color ) + ";"; 
		}
		if ( ( stroke != null ) && ( stroke instanceof BasicStroke ) )
		{
			BasicStroke bs = (BasicStroke) stroke;
			if ( bs.getLineWidth( ) > 0 )
				style += "stroke-width:" + bs.getLineWidth( ) + ";"; 
			if ( bs.getDashArray( ) != null )
			{
				String dashArrayStr = ""; 
				for ( int x = 0; x < bs.getDashArray( ).length; x++ )
				{
					dashArrayStr += " " + bs.getDashArray( )[x]; 
				}
				if ( !( dashArrayStr.equals( "" ) ) ) 
					style += "stroke-dasharray:" + dashArrayStr + ";"; 
			}
			style += "stroke-miterlimit:" + bs.getMiterLimit( ) + ";"; 
			switch ( bs.getLineJoin( ) )
			{
				case BasicStroke.JOIN_BEVEL :
					style += "stroke-linejoin:bevel;"; 
					break;
				case BasicStroke.JOIN_ROUND :
					style += "stroke-linejoin:round;"; 
					break;