Example #1
0
        public static Page ReadXml(XmlReader reader)
        {
            Page p = new Page();

            if (reader.HasAttributes)
            {
                p.Self                = reader.GetAttribute("Self");
                p.GeometricBounds     = reader.GetAttribute("GeometricBounds");
                p.ItemTransform       = reader.GetAttribute("ItemTransform");
                p.Name                = reader.GetAttribute("Name");
                p.AppliedTrapPreset   = reader.GetAttribute("AppliedTrapPreset");
                p.OverrideList        = reader.GetAttribute("OverrideList");
                p.AppliedMaster       = reader.GetAttribute("AppliedMaster");
                p.MasterPageTransform = reader.GetAttribute("MasterPageTransform");
                p.TabOrder            = reader.GetAttribute("TabOrder").Split(' ');
                p.GridStartingPoint   = (GridStartingPointOptions)Enum.Parse(typeof(GridStartingPointOptions), reader.GetAttribute("GridStartingPoint"));
                p.UseMasterGrid       = Convert.ToBoolean(reader.GetAttribute("UseMasterGrid"));
            }

            if (reader.IsEmptyElement)
            {
                return(p);
            }

            while (reader.Read())
            {
                switch (reader.Name)
                {
                case "Properties":
                    while (reader.Read())
                    {
                        switch (reader.Name)
                        {
                        case "PageColor":
                            p.PageColor = PageColor.ReadXml(reader);
                            break;

                        case "Descriptor":
                            p.Descriptor = Descriptor.ReadXml(reader);
                            break;

                        default:
                            if (reader.NodeType == XmlNodeType.Element)
                            {
                                Debug.WriteLine("Unrecognized element: {0} in element: {1}", reader.Name, "Page - Properties");
                            }
                            break;
                        }
                        if (reader.Name == "Properties" & reader.NodeType == XmlNodeType.EndElement)
                        {
                            break;
                        }
                    }
                    break;

                case "GridDataInformation":
                    p.GridDataInformation = GridDataInformation.ReadXml(reader);
                    break;

                case "MarginPreference":
                    p.MarginPreference = MarginPreference.ReadXml(reader);
                    break;

                case "Page":
                    if (reader.NodeType == XmlNodeType.EndElement)
                    {
                        goto exit1;
                    }

                    break;

                default:
                    if (reader.NodeType == XmlNodeType.Element)
                    {
                        Debug.WriteLine("Unrecognized element: {0} in element: {1}", reader.Name, "Page");
                    }
                    break;
                }
            }

exit1:
            return(p);
        }
Example #2
0
        public static GridDataInformation ReadXml(XmlReader reader)
        {
            GridDataInformation gdi = new GridDataInformation();

            if (reader.HasAttributes)
            {
                gdi.FontStyle              = System.Convert.ToString(reader.GetAttribute("FontStyle"));
                gdi.PointSize              = Parser.ParseDouble(reader.GetAttribute("PointSize"));
                gdi.CharacterAki           = Parser.ParseDouble(reader.GetAttribute("CharacterAki"));
                gdi.LineAki                = Parser.ParseDouble(reader.GetAttribute("LineAki"));
                gdi.HorizontalScale        = Parser.ParseDouble(reader.GetAttribute("HorizontalScale"));
                gdi.VerticalScale          = Parser.ParseDouble(reader.GetAttribute("VerticalScale"));
                gdi.LineAlignment          = (LineAlignment?)Parser.ParseEnum <LineAlignment>(reader.GetAttribute("LineAlignment"));
                gdi.GridAlignment          = (GridAlignment?)Parser.ParseEnum <GridAlignment>(reader.GetAttribute("GridAlignment"));
                gdi.CharacterAlignment     = (CharacterAlignment?)Parser.ParseEnum <CharacterAlignment>(reader.GetAttribute("CharacterAlignment"));
                gdi.GridView               = (GridViewSettings?)Parser.ParseEnum <GridViewSettings>(reader.GetAttribute("GridView"));
                gdi.CharacterCountLocation = (CharacterCountLocation?)Parser.ParseEnum <CharacterCountLocation>(reader.GetAttribute("CharacterCountLocation"));
                gdi.CharacterCountSize     = Parser.ParseDouble(reader.GetAttribute("CharacterCountSize"));
            }

            if (reader.IsEmptyElement)
            {
                return(gdi);
            }

            while (reader.Read())
            {
                if ((string)reader.Name == "Properties")
                {
                    while (reader.Read())
                    {
                        if ((string)reader.Name == "AppliedFont")
                        {
                            gdi.AppliedFont = AppliedFont.ReadXml(reader);
                        }
                        else
                        {
                            if (reader.NodeType == XmlNodeType.Element)
                            {
                                Debug.WriteLine("Unrecognized element: {0} in element: {1}", reader.Name, "GridDataInformation - Properties");
                            }
                        }
                        if (reader.Name == "Properties" && reader.NodeType == XmlNodeType.EndElement)
                        {
                            break;
                        }
                    }
                }
                else if ((string)reader.Name == "GridDataInformation")
                {
                    if (reader.NodeType == XmlNodeType.EndElement)
                    {
                        break;
                    }
                }
                else
                {
                    if (reader.NodeType == XmlNodeType.Element)
                    {
                        Debug.WriteLine("Unrecognized element: {0} in element: {1}", reader.Name, "GridDataInformation");
                    }
                }
            }

            return(gdi);
        }