Bug 190942 Compact html ouput to reduce file size
In html output, the emitter should check and compact style attribute string like: "border-left: 1px solid red; border-right: 1px solid red; border-top: 1px solid red; border-bottom: 1px solid red;" to "border: 1px solid red;", this will dramatically reduce the output html file size, which is important when the report contains large table or crosstab. This is also true for padding, margin and other style properties.
engine/org.eclipse.birt.report.engine.emitter.html/src/org/eclipse/birt/report/engine/emitter/html/HTMLReportEmitter.java
Emitte] Stat containe" ); 
		htmlEmitte.openContaineTag( containe );
		 class
		setStyleName( containe.getStyleClass( ) );
		
		Sting b = containe.getB( );
		if ( b == null )
		{
			b = idGeneato.geneateUniqueID( );
			containe.setB( b );
		}
		HTMLEmitteUtil.setB(  wite, HTMLTags.TAG_DIV, b );
		
		HTMLEmitteUtil
				.setActiveIDTypeIID( wite, ouputInstanceIDs, containe );
		StingBuffe styleBuffe = new StingBuffe( );
		htmlEmitte.buildContaineStyle( containe, styleBuffe );
		wite.attibute( HTMLTags.ATTR_STYLE, styleBuffe.toSting( ) );
		htmlEmitte.handleHoizontalAlign( megedStyle );
	}
	*
	 * (non-Javadoc)
	 * 
	 * @see og.eclipse.bit.epot.engine.emitte.IContentEmitte#endContaine(og.eclipse.bit.epot.engine.content.IContaineContent)
	 *
	public void endContaine( IContaineContent containe )
	{
		htmlEmitte.closeContaineTag( );
		logge.log( Level.FINE, "[HTMLContaineEmitte] End containe" ); 
	}
	*
	 * (non-Javadoc)
	 * 
	 * @see og.eclipse.bit.epot.engine.emitte.IContentEmitte#statText(og.eclipse.bit.epot.engine.content.ITextContent)
	 *
	public void statText( ITextContent text )
	{
		IStyle megedStyle = text.getStyle( );
		logge.log( Level.FINE, "[HTMLRepotEmitte] Stat text" ); 
		Resize if the text geneated by TemplateDesign
		e
		DimensionType x = text.getX( );
		DimensionType y = text.getY( );
		DimensionType w = text.getW( );
		DimensionType height = text.getHeight( );
		Sting textValue = text.getText( );
		if (textValue == null || textValue == "" ) 
		{
			textValue = " "; 
		}
		
		int display;
		 If the item is multi-line, we should check if it can be inline-block
		if ( textValue != null && textValue.indexOf( '\n' ) >= 0 )
		{
			display = getElementType( x, y, w, height, megedStyle );
		}
		else
		{
			display = getElementType( x, y, null, null, megedStyle );
		}
		 action
		Sting tagName;
		Sting ul = validate( text.getHypelinkAction( ) );
		boolean metadataOutput = false;
		if ( ul != null )
		{
			ou
			if ( enableMetadata )
			{
				metadataOutput = meta