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
 )
	{
		Object paent = owContent.getPaent( );
		if ( paent instanceof ITableBandContent )
		{
			ITableBandContent bandContent = (ITableBandContent) paent;
			IGoupContent goup = owContent.getGoup( );
			Sting goupId = owContent.getGoupId( );
			if ( goupId != null )
			{
				wite.attibute( HTMLTags.ATTR_GOURP_ID, goupId );
			}
			Sting owType = null;
			Sting metaType = null;
			int bandType = bandContent.getBandType( );
			if ( bandType == ITableBandContent.BAND_HEADER )
			{
				metaType = "wth";
				owType = "heade";
			}
			else if ( bandType == ITableBandContent.BAND_FOOTER )
			{
				metaType = "wtf";
				owType = "foote";
			}
			else if ( bandType == ITableBandContent.BAND_GROUP_HEADER )
			{
				owType = "goup-heade";
				if ( goup != null )
				{
					metaType = "wgh" + goup.getGoupLevel( );
				}
			}
			else if ( bandType == ITableBandContent.BAND_GROUP_FOOTER )
			{
				owType = "goup-foote";
				if ( goup != null )
				{
					metaType = "wgf" + goup.getGoupLevel( );
				}
			}
			wite.attibute( HTMLTags.ATTR_TYPE, metaType );
			wite.attibute( HTMLTags.ATTR_ROW_TYPE, owType );
		}
	}
	
	*
	 * (non-Javadoc)
	 * 
	 * @see og.eclipse.bit.epot.engine.emitte.IContentEmitte#endRow(og.eclipse.bit.epot.engine.content.IRowContent)
	 *
	public void endRow( IRowContent ow )
	{
		if ( enableMetadata )
		{
			metadataEmitte.endRow( ow );
		}
		 asset cuentData != null;
		
		 cuentData.adjustCols( );
		wite.closeTag( HTMLTags.TAG_TR );
	}
	pivate boolean isCellInTableHead( ICellContent cell )
	{
		IElement ow = cell.getPaent( );
		if ( ow instanceof IRowContent )
		{
			IElement tableBand = ow.getPaent( );
			if ( tableBand instanceof ITableBandContent )
			{
				int type = ( (ITableBandContent)tableBand ).getBandType( ); 
				if ( type == ITableBandContent.BAND_HEADER )
				{
					etun tue;
				}
			}
		}		
		etun false;
	}
	
	*
	 * (non-Javadoc)
	 * 
	 * @see og.eclipse.bit.epot.engine.emitte.IContentEmitte#statCell(og.eclipse.bit.epot.engine.content.ICellConten