void MapObject(LineFormat lineFormat, DocumentObjectModel.Shapes.LineFormat domLineFormat) { if (domLineFormat.Color.IsEmpty) lineFormat.Color = XColor.Empty; else { #if noCMYK lineFormat.Color = XColor.FromArgb(domLineFormat.Color.Argb); #else lineFormat.Color = ColorHelper.ToXColor(domLineFormat.Color, domLineFormat.Document.UseCmykColor); #endif } switch (domLineFormat.DashStyle) { case DocumentObjectModel.Shapes.DashStyle.Dash: lineFormat.DashStyle = XDashStyle.Dash; break; case DocumentObjectModel.Shapes.DashStyle.DashDot: lineFormat.DashStyle = XDashStyle.DashDot; break; case DocumentObjectModel.Shapes.DashStyle.DashDotDot: lineFormat.DashStyle = XDashStyle.DashDotDot; break; case DocumentObjectModel.Shapes.DashStyle.Solid: lineFormat.DashStyle = XDashStyle.Solid; break; case DocumentObjectModel.Shapes.DashStyle.SquareDot: lineFormat.DashStyle = XDashStyle.Dot; break; default: lineFormat.DashStyle = XDashStyle.Solid; break; } switch (domLineFormat.Style) { case DocumentObjectModel.Shapes.LineStyle.Single: lineFormat.Style = LineStyle.Single; break; } lineFormat.Visible = domLineFormat.Visible; if (domLineFormat.IsNull("Visible")) lineFormat.Visible = true; lineFormat.Width = domLineFormat.Width.Point; }
/// <summary> /// Initializes a new instance of the LineFormatRenderer class with the specified graphics, line format /// and default width. /// </summary> public LineFormatRenderer(XGraphics gfx, LineFormat lineFormat, double defaultWidth) { this.gfx = gfx; bool visible = false; double width = 0; if (lineFormat != null) { width = lineFormat.width; if (width == 0 && !lineFormat.Color.IsEmpty) width = defaultWidth; visible = lineFormat.Visible || width > 0 || !lineFormat.Color.IsEmpty; } if (visible) { this.pen = new XPen(lineFormat.Color, width); this.pen.DashStyle = lineFormat.DashStyle; } }
/// <summary> /// Initializes a new instance of the LineFormatRenderer class with the specified graphics and /// line format. /// </summary> public LineFormatRenderer(XGraphics gfx, LineFormat lineFormat) : this(gfx, lineFormat, 0) { }
internal static void Map(LineFormat lineFormat, DocumentObjectModel.Shapes.LineFormat domLineFormat) { LineFormatMapper mapper = new LineFormatMapper(); mapper.MapObject(lineFormat, domLineFormat); }