private static void FormatItem(VttSection section, IFormattedTextBlock formattedText, int blockOffset, string block) { VttTextOptions options; if (blockOffset + block.Length <= formattedText.Text.Length && s_options.TryGetValue(section, out options)) { int length = block.Length; if (options.Colour != null) formattedText.SetForegroundBrush(options.Colour, blockOffset, length); if (options.Decorations != null) formattedText.SetTextDecorations(options.Decorations, blockOffset, length); if (options.Family != null) formattedText.SetFontFamily(options.Family, blockOffset, length); if (options.Size > 0) formattedText.SetFontSize(options.Size, blockOffset, length); if (options.Stretch != FontStretches.Medium) formattedText.SetFontStretch(options.Stretch, blockOffset, length); if (options.Style != FontStyles.Normal) formattedText.SetFontStyle(options.Style, blockOffset, length); if (options.Weight != FontWeights.Normal) formattedText.SetFontWeight(options.Weight, blockOffset, length); } }
private void CheckBlock(TextBlockItem item, int position, int length, VttSection section) { Assert.AreEqual(position, item.Position); Assert.AreEqual(length, item.Length); Assert.AreEqual(_highlighter.Options(section).Colour, item.Brush); }
public VttTextOptions Options(VttSection section) { VttTextOptions options; return s_options.TryGetValue(section, out options) ? options : null; }