Example #1
0
        //20130604 :: mellorasinxelas

        /// <summary>
        /// Draws built-in image
        /// </summary>
        /// <param name="pdfDraw"></param>
        /// <param name="data"></param>
        public override void Draw(PDFDraw.IPDFDraw pdfDraw, IDictionary data)
        {
            //NOTE: Dont support format.
            StringBuilder src = new StringBuilder(Attributes[SrcAttributeConstant].Value);

            foreach (Variable act in VAR)
            {
                string var = act.Name;
                if (data.Contains(var))
                {
                    src.Replace(var, data[var].ToString());
                }
                else if (PDFTemplate.UseOptionalTags && !act.Optional)
                {
                    //only NOT optional vars with OptionalTags ON are replaced with empty value.
                    src.Replace(var, "");
                }
            }


            //20150914 :: supports absolute X,Y.
            float absX = Moon.PDFDraw.Helper.GetFloatAttributeValue(AbsoluteXAttributeConstant, Attributes, -1);
            float absY = Moon.PDFDraw.Helper.GetFloatAttributeValue(AbsoluteYAttributeConstant, Attributes, -1);

            if (absX != -1 && absY != -1)
            {            //new
                pdfDraw.DrawImage(absX, absY, /*src.ToString(),*/ Attributes);
            }
            else             //classic
            {
                pdfDraw.DrawImage(X, src.ToString(), Attributes);
            }
            //---
        }
Example #2
0
        //20130604 :: mellorasinxelas
        /// <summary>
        /// Draws the textblock
        /// </summary>
        /// <param name="pdfDraw"></param>
        /// <param name="data"></param>
        public override void Draw(PDFDraw.IPDFDraw pdfDraw, System.Collections.IDictionary data)
        {
            //            StringBuilder txt = new StringBuilder(Text);
            //            foreach (Variable act in VAR)
            //            {
//					string var = act.Name;
//
//					object dataV = data[var]; //null if not exists. Reduce HASH access.
//
//					//first of all if its formatable. This system supports null values.
//					if(act is FormatableVariable){
//						object formatV = ((FormatableVariable)act).GetFormatedValue(dataV);
//						txt.Replace(var, formatV != null? formatV.ToString() : null );
//					}
//					else if (dataV != null)
//					{    //original
//						txt.Replace(var, dataV.ToString() );
//					}
//					else if(PDFTemplate.UseOptionalTags && !act.Optional){
//						//only NOT optional vars with OptionalTags ON are replaced with empty value.
//						txt.Replace(var, "");
//					}
            //            }
            //change to super gettext.
            pdfDraw.DrawBlockString(GetText(data), X, Width, FontAttributes, TextAttrs);
        }
Example #3
0
 /// <summary>
 /// Draws this textbox
 /// </summary>
 /// <param name="pdfDraw"></param>
 /// <param name="data"></param>
 public override void Draw(PDFDraw.IPDFDraw pdfDraw, System.Collections.IDictionary data)
 {
     pdfDraw.DrawString(GetText(data), X, Width, FontAttributes, Attributes);
 }
Example #4
0
 public override void Draw(PDFDraw.IPDFDraw pdfDraw, System.Collections.Hashtable data)
 {
     pdfDraw.DrawHorizontalLine(this.x1, this.x2, RectangleAttrs);
 }
Example #5
0
 /// <summary>
 /// Draws element
 /// </summary>
 /// <param name="pdfDraw"></param>
 /// <param name="data"></param>
 public override void Draw(PDFDraw.IPDFDraw pdfDraw, System.Collections.IDictionary data)
 {
     pdfDraw.DrawVerticalLine(this.x1, this.x2, lineAttrs);
 }