public override void CreatePath(iTextSharp.text.pdf.PdfContentByte contentByte, BaseLine line, IBaseStyleDecorator style, iTextSharp.text.Rectangle rectangle) { if (contentByte == null) { throw new ArgumentNullException("contentByte"); } if (rectangle == null) { throw new ArgumentNullException("rectangle"); } if ((line == null) || (line.Thickness < 1)) { BaseShape.FillBackGround(contentByte, style, rectangle); } else if ((style.BackColor == GlobalValues.DefaultBackColor)) { BaseShape.SetupShape(contentByte, style); contentByte.SetLineWidth(UnitConverter.FromPixel(line.Thickness).Point); contentByte.Ellipse(rectangle.Left, rectangle.Top, rectangle.Left + rectangle.Width, rectangle.Top - rectangle.Height); BaseShape.FinishShape(contentByte); } else { BaseShape.FillBackGround(contentByte, style, rectangle); } }
// http://www.mikesdotnetting.com/Article/88/iTextSharp-Drawing-shapes-and-Graphics public override void CreatePath(iTextSharp.text.pdf.PdfContentByte contentByte, BaseLine line, IBaseStyleDecorator style, iTextSharp.text.Rectangle rectangle) { if (contentByte == null) { throw new ArgumentNullException("contentByte"); } if (style == null) { throw new ArgumentNullException("style"); } if (rectangle == null) { throw new ArgumentNullException("rectangle"); } if (line == null) { BaseShape.FillBackGround(contentByte, style, rectangle); } else { BaseShape.SetupShape(contentByte, style); contentByte.SetLineWidth(UnitConverter.FromPixel(line.Thickness).Point); contentByte.RoundRectangle(rectangle.Left, rectangle.Bottom, rectangle.Width, rectangle.Height, CornerRadius); BaseShape.FinishShape(contentByte); } }