Example #1
0
 /// <summary>
 /// 输出对象数据到HTML文档
 /// </summary>
 /// <param name="writer">HTML文档书写器</param>
 public override void WriteHTML(DCSoft.CSharpWriter.Html.WriterHtmlDocumentWriter writer)
 {
     if (this.Image.HasContent)
     {
         writer.WriteImageElement(this);
     }
 }
        //public override void AfterLoad(DocumentFormatStyle format)
        //{
        //    base.AfterLoad(format);
        //    if (format == DocumentFormatStyle.XML)
        //    {
        //        WriterUtils.SplitElements(this.Elements);
        //    }
        //}
//
//		/// <summary>
//		/// 删除子元素操作
//		/// </summary>
//		/// <param name="element">要删除的子元素</param>
//		/// <returns>是否删除元素</returns>
//		public override bool RemoveChild(XTextElement element)
//		{
//			if( element == this.myEOFElement )
//			{
//				if( this.NextElement is XTextParagraph )
//				{
//					XTextParagraph p = ( XTextParagraph ) this.NextElement ;
//					int pindex = myParent.Elements.IndexOf( p );
//					XTextElementList list = new XTextElementList();
//					list.AddRange( p.Elements );
//					list.RemoveAt( list.Count - 1 );
//					int index = myElements.Count - 1 ;
//					myElements.AddRange( list );
//					myParent.RemoveChild( p );
//					if( myOwnerDocument.CanLogUndo )
//					{
//						myOwnerDocument.UndoList.AddRemoveElement( myParent , pindex , p );
//						myOwnerDocument.UndoList.AddInsertElements( this , index , list );
//					}
//					myOwnerDocument.bolModifyParagraph = true ;
//					return true ;
//				}
//				return false;
//			}
//			myElements.Remove( element );
//			return true ;
//		}

        public override void WriteHTML(DCSoft.CSharpWriter.Html.WriterHtmlDocumentWriter writer)
        {
            DocumentContentStyle rs = this.RuntimeStyle;

            if (rs.NumberedList == false && rs.BulletedList == false)
            {
                writer.WriteStartElement("p");
            }
            else
            {
                writer.WriteStartElement("li");
            }
            writer.WriteDocumentContentStyle(this.RuntimeStyle, this);
            writer.WriteStyleItem("text-justify", "inter-ideograph");
            writer.WriteStyleItem(
                "margin-bottom",
                this.OwnerDocument.ToPixel(( int )rs.SpacingBeforeParagraph) + " px");
            //if( intListStyle == ParagraphListStyle.None && this.bolHeadIndent )

            if (rs.NumberedList == false &&
                rs.BulletedList == false &&
                rs.FirstLineIndent != 0)
            {
                writer.WriteStyleItem(
                    "margin-left",
                    this.OwnerDocument.ToPixel(( int )rs.FirstLineIndent) + " px");
            }
            writer.WriteEndStyle();
            if (this.Elements.Count > 1)
            {
                DomParagraphElement p = this.CreateMergedParagrahp(
                    writer.IncludeSelectionOndly);

                foreach (DomElement element in p.Elements)
                {
                    element.WriteHTML(writer);
                }
                //base.WriteContentHTML( writer );
            }
            else
            {
                writer.WriteText(" ");
            }
            writer.WriteEndElement();
        }
Example #3
0
        /// <summary>
        /// 输出对象数据到HTML文档
        /// </summary>
        /// <param name="writer">HTML文档书写器</param>
        public override void WriteHTML(DCSoft.CSharpWriter.Html.WriterHtmlDocumentWriter writer)
        {
            DocumentContentStyle rs = this.RuntimeStyle;

            if (rs.Superscript)
            {
                writer.WriteStartElement("sup");
            }
            else if (rs.Subscript)
            {
                writer.WriteStartElement("sub");
            }
            string link = rs.Link;

            if (link != null && link.Trim().Length > 0)
            {
                writer.WriteStartElement("a");
                writer.WriteAttributeString("href", link);
            }
            else
            {
                writer.WriteStartElement("span");
            }
            writer.WriteStartStyle();
            writer.WriteDocumentContentStyle(this.RuntimeStyle, this);
            writer.WriteEndStyle();

            writer.WriteText(
                this.GetOutputText(writer.IncludeSelectionOndly));

            writer.WriteEndElement();
            if (rs.Superscript || rs.Subscript)
            {
                writer.WriteEndElement();
            }
        }