Exemplo n.º 1
0
        /// <summary>
        /// Converts Coptic-Latin to Coptic-Font for displaying
        /// </summary>
        /// <param name="input">Coptic-Latin</param>
        /// <param name="isGreek"></param>
        /// <returns></returns>
        public static string ConvertFromString(string input, bool isGreek = false)
        {
            // Characters must be separated by a dash
            // For capital Coptic letters, capitalize the first letter of the Latin set
            if (CopticAlphabet.Keys.Count == 0)
            {
                InitAlphabet(isGreek);
            }
            string output = "";

            string[] split = input.Split(new string[] { "-" }, StringSplitOptions.RemoveEmptyEntries);
            foreach (string s in split)
            {
                string copt;
                if (s.EndsWith("`"))
                {
                    CopticAlphabet.TryGetValue(s, out copt);
                    output += copt;
                    output += "~";
                }
                else if (s == " ")
                {
                    output += " ";
                }
                else if (s == ";")
                {
                    output += ";";
                }
                else if (s == ":")
                {
                    output += ":";
                }
                else if (s == ".")
                {
                    output += ".";
                }
                else
                {
                    CopticAlphabet.TryGetValue(s, out copt);
                    output += copt;
                }
            }

            return(output);
        }
Exemplo n.º 2
0
        /// <summary>
        /// Converts Coptic-Font to Coptic-Latin for saving
        /// </summary>
        /// <param name="input">Coptin-Font</param>
        /// <param name="isGreek"></param>
        /// <returns></returns>
        public static string ConvertToString(string input, bool isGreek = false)
        {
            if (CopticAlphabet.Keys.Count == 0)
            {
                InitAlphabet(isGreek);
            }

            string output = "";

            foreach (char ch in input.ToList())
            {
                string s = ch.ToString();
                if (s == " ")
                {
                    output += " -";
                }
                else if (s == "~")
                {
                    output += "`-";
                }
                else if (s == ";")
                {
                    output += ";-";
                }
                else if (s == ":")
                {
                    output += ":-";
                }
                else if (s == ".")
                {
                    output += ".-";
                }
                else if (s == "\n")
                {
                    output += "&amp;#xD;-";
                }
                else
                {
                    output += CopticAlphabet.FirstOrDefault(x => x.Value == s).Key + "-";
                }
            }
            return(output);
        }