private static void AdjustMarker(Shape marker, TextPointer pointer)
{
var rect = pointer.GetCharacterRect(LogicalDirection.Forward);
marker.Margin = new Thickness(rect.Left, rect.Top, 0, 0);
marker.Visibility = System.Windows.Visibility.Visible;
marker.Fill = pointer.LogicalDirection == LogicalDirection.Forward ? Brushes.HotPink : Brushes.Yellow;
}