virtual public object Clone(CloneOptions options) { var display = options?.Display; if (display == null) { return(this.Clone()); } float fac = 1; if (options.ApplyRefScale) { fac = ReferenceScaleHelper.RefscaleFactor( (float)(display.refScale / display.mapScale), _font.Size, MinFontSize, MaxFontSize); fac = options.LabelRefScaleFactor(fac); } fac *= options.DpiFactor; SimpleTextSymbol tSym = new SimpleTextSymbol(Current.Engine.CreateFont(_font.Name, Math.Max(_font.Size * fac / display.Screen.LargeFontsFactor, 2), _font.Style), _brush.Color); tSym.HorizontalOffset = HorizontalOffset * fac; tSym.VerticalOffset = VerticalOffset * fac; tSym.Angle = Angle; tSym._align = _align; tSym.Smoothingmode = this.Smoothingmode; tSym.IncludesSuperScript = this.IncludesSuperScript; tSym.SecondaryTextSymbolAlignments = this.SecondaryTextSymbolAlignments; return(tSym); }
override public object Clone(CloneOptions options) { var display = options?.Display; if (display == null) { return(this.Clone()); } float fac = 1; if (options.ApplyRefScale) { fac = (float)(display.refScale / display.mapScale); fac = options.LabelRefScaleFactor(fac); } fac *= options.DpiFactor; GlowingTextSymbol tSym = new GlowingTextSymbol(Current.Engine.CreateFont(_font.Name, Math.Max(_font.Size * fac / display.Screen.LargeFontsFactor, 2f), _font.Style), _brush.Color, _outlinebrush.Color); tSym.HorizontalOffset = HorizontalOffset * fac; tSym.VerticalOffset = VerticalOffset * fac; tSym.Angle = Angle; tSym._align = _align; tSym.Smoothingmode = this.Smoothingmode; tSym.GlowingSmoothingmode = this.GlowingSmoothingmode; tSym.GlowingWidth = this.GlowingWidth; tSym.IncludesSuperScript = this.IncludesSuperScript; tSym.SecondaryTextSymbolAlignments = this.SecondaryTextSymbolAlignments; return(tSym); }