private static void DoCaseTranslation()

in Managed/PseudoLoc/PseudoLocalizer.cs [372:396]


            private static void DoCaseTranslation(string str, char[] translatedChars)
            {
                bool inXamlTag = false;
                for (var i = 0; i < str.Length; i++)
                {
                    var c = str[i];

                    if (inXamlTag)
                    {
                        translatedChars[i] = c;
                        if (c == '>')
                        {
                            inXamlTag = false;
                        }
                    }
                    else
                    {
                        translatedChars[i] = (i % 2) == 0 ? char.ToUpper(c) : char.ToLower(c);
                        if (c == '<' && str.IndexOf('>', i) > -1)
                        {
                            inXamlTag = true;
                        }
                    }
                }
            }