public TimedTextStyle() { BackgroundColor = DefaultBackgroundColor; Color = DefaultColor; DisplayAlign = DefaultDisplayAlign; Extent = DefaultExtent; FontFamily = DefaultFontFamily; FontSize = new Length { Unit = LengthUnit.Cell, Value = 1 }; FontStyle = DefaultFontStyle; FontWeight = DefaultFontWeight; Id = Guid.NewGuid().ToString(); LineHeight = null; Opacity = DefaultOpacity; Origin = DefaultOrigin; Overflow = DefaultOverflow; Padding = DefaultPadding; ShowBackground = DefaultShowBackground; TextAlign = DefaultTextAlignment; Direction = DefaultDirection; Visibility = DefaultVisibility; WrapOption = DefaultWrapOption; OutlineColor = DefaultOutlineColor; OutlineWidth = new Length { Value = 0.0, Unit = LengthUnit.Pixel }; OutlineBlur = new Length { Value = 0.0, Unit = LengthUnit.Pixel }; }
private TextBlock GetStyledTextblock(TimedTextStyle style, double width, double height, bool fOutline) { TextBlock block = new TextBlock { FontStyle = style.FontStyle, FontWeight = style.FontWeight, VerticalAlignment = VerticalAlignment.Bottom, FontFamily = style.FontFamily }; if (!double.IsNaN(height) && (height != 0.0)) { if ((this.CaptionsOverrideSettings != null) && (this.CaptionsOverrideSettings.CharacterSize != CaptionsOverrideSizes.pct100)) { Length length = new Length { Unit = style.FontSize.Unit, Value = style.FontSize.Value * (((double) this.CaptionsOverrideSettings.CharacterSize.ToPercentage()) / 100.0) }; block.FontSize = Math.Round(length.ToPixelLength(height)); } else { block.FontSize = Math.Round(style.FontSize.ToPixelLength(height)); } } block.Foreground = GetCachedBrush(fOutline ? style.OutlineColor : style.Color); block.TextAlignment = style.TextAlign; return block; }