Exemplo n.º 1
0
        public static TextSymbol ReadFrom(ArcXmlReader reader)
        {
            try
            {
                TextSymbol textSymbol = new TextSymbol();

                if (reader.HasAttributes)
                {
                    while (reader.MoveToNextAttribute())
                    {
                        string value = reader.ReadContentAsString();

                        if (value.Length > 0)
                        {
                            switch (reader.Name)
                            {
                            case "antialiasing": textSymbol.Antialiasing = Convert.ToBoolean(value); break;

                            case "blockout": textSymbol.BlockOut = ColorConverter.ToColor(value); break;

                            case "font": textSymbol.Font = value; break;

                            case "fontcolor": textSymbol.FontColor = ColorConverter.ToColor(value); break;

                            case "fontsize": textSymbol.FontSize = reader.ReadContentAsInt(); break;

                            case "fontstyle": textSymbol.FontStyle = (FontStyle)ArcXmlEnumConverter.ToEnum(typeof(FontStyle), value); break;

                            case "glowing": textSymbol.Glowing = ColorConverter.ToColor(value); break;

                            case "interval": textSymbol.Interval = Convert.ToInt32(value); break;

                            case "outline": textSymbol.Outline = ColorConverter.ToColor(value); break;

                            case "printmode": textSymbol.PrintMode = (PrintMode)ArcXmlEnumConverter.ToEnum(typeof(PrintMode), value); break;

                            case "shadow": textSymbol.Shadow = ColorConverter.ToColor(value); break;

                            case "transparency": textSymbol.Transparency = Convert.ToDouble(value); break;
                            }
                        }
                    }

                    reader.MoveToElement();
                }

                return(textSymbol);
            }
            catch (Exception ex)
            {
                if (ex is ArcXmlException)
                {
                    throw ex;
                }
                else
                {
                    throw new ArcXmlException(String.Format("Could not read {0} element.", XmlName), ex);
                }
            }
        }