Exemplo n.º 1
0
    public static TextWrapPreference ReadXml(XmlReader reader)
    {
        TextWrapPreference twp = new TextWrapPreference();

        if (reader.HasAttributes)
        {
            twp.Inverse = Convert.ToBoolean(reader.GetAttribute("Inverse"));
            twp.ApplyToMasterPageOnly = Convert.ToBoolean(reader.GetAttribute("ApplyToMasterPageOnly"));
            twp.TextWrapSide          = (TextWrapSideOptions)Enum.Parse(typeof(TextWrapSideOptions), reader.GetAttribute("TextWrapSide"));
            twp.TextWrapMode          = (TextWrapModes)Enum.Parse(typeof(TextWrapModes), reader.GetAttribute("TextWrapMode"));
        }

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

        while (reader.Read())
        {
            if (reader.Name == "TextWrapOffset" & reader.NodeType == XmlNodeType.Element)
            {
                twp.TextWrapOffset = TextWrapOffset.ReadXml(reader);
            }
            else if (reader.Name == "TextWrapPreference" & reader.NodeType == XmlNodeType.EndElement)
            {
                break;
            }
        }

        return(twp);
    }
Exemplo n.º 2
0
    public static Rectangle ReadXml(XmlReader reader)
    {
        Rectangle r = new Rectangle();

        if (reader.HasAttributes)
        {
            r.Self                       = System.Convert.ToString(reader.GetAttribute("Self"));
            r.ContentType                = (ContentType)Parser.ParseEnum <ContentType>(reader.GetAttribute("ContentType"));
            r.StoryTitle                 = System.Convert.ToString(reader.GetAttribute("StoryTitle"));
            r.AllowOverrides             = Parser.ParseBoolean(reader.GetAttribute("AllowOverrides"));
            r.FillColor                  = System.Convert.ToString(reader.GetAttribute("FillColor"));
            r.FillTint                   = Parser.ParseDouble(reader.GetAttribute("FillTint"));
            r.OverprintFill              = Parser.ParseBoolean(reader.GetAttribute("OverprintFill"));
            r.CornerRadius               = Parser.ParseDouble(reader.GetAttribute("CornerRadius"));
            r.StrokeWeight               = Parser.ParseDouble(reader.GetAttribute("StrokeWeight"));
            r.MiterLimit                 = Parser.ParseDouble(reader.GetAttribute("MiterLimit"));
            r.EndCap                     = (EndCap?)Parser.ParseEnum <EndCap>(reader.GetAttribute("EndCap"));
            r.EndJoin                    = (EndJoin?)Parser.ParseEnum <EndJoin>(reader.GetAttribute("EndJoin"));
            r.StrokeType                 = System.Convert.ToString(reader.GetAttribute("StrokeType"));
            r.StrokeCornerAdjustment     = (StrokeCornerAdjustment?)Parser.ParseEnum <StrokeCornerAdjustment>(reader.GetAttribute("StrokeCornerAdjustment"));
            r.StrokeDashAndGap           = System.Convert.ToString(reader.GetAttribute("StrokeDashAndGap"));
            r.LeftLineEnd                = (ArrowHead?)Parser.ParseEnum <ArrowHead>(reader.GetAttribute("LeftLineEnd"));
            r.RightLineEnd               = (ArrowHead?)Parser.ParseEnum <ArrowHead>(reader.GetAttribute("RightLineEnd"));
            r.StrokeColor                = System.Convert.ToString(reader.GetAttribute("StrokeColor"));
            r.StrokeTint                 = Parser.ParseDouble(reader.GetAttribute("StrokeTint"));
            r.GradientFillStart          = new UnitPointType(reader.GetAttribute("GradientFillStart"));
            r.GradientFillLength         = Parser.ParseDouble(reader.GetAttribute("GradientFillLength"));
            r.GradientFillAngle          = Parser.ParseDouble(reader.GetAttribute("GradientFillAngle"));
            r.GradientStrokeStart        = new UnitPointType(reader.GetAttribute("GradientStrokeStart"));
            r.GradientStrokeLength       = Parser.ParseDouble(reader.GetAttribute("GradientStrokeLength"));
            r.GradientStrokeAngle        = Parser.ParseDouble(reader.GetAttribute("GradientStrokeAngle"));
            r.OverprintStroke            = Parser.ParseBoolean(reader.GetAttribute("OverprintStroke"));
            r.GapColor                   = System.Convert.ToString(reader.GetAttribute("GapColor"));
            r.GapTint                    = Parser.ParseDouble(reader.GetAttribute("GapTint"));
            r.OverprintGap               = Parser.ParseBoolean(reader.GetAttribute("OverprintGap"));
            r.StrokeAlignment            = (StrokeAlignment?)Parser.ParseEnum <StrokeAlignment>(reader.GetAttribute("StrokeAlignment"));
            r.Nonprinting                = Parser.ParseBoolean(reader.GetAttribute("Nonprinting"));
            r.ItemLayer                  = System.Convert.ToString(reader.GetAttribute("ItemLayer"));
            r.Locked                     = Parser.ParseBoolean(reader.GetAttribute("Locked"));
            r.LocalDisplaySetting        = (DisplaySettingOptions?)Parser.ParseEnum <DisplaySettingOptions>(reader.GetAttribute("LocalDisplaySetting"));
            r.GradientFillHiliteLength   = Parser.ParseDouble(reader.GetAttribute("GradientFillHiliteLength"));
            r.GradientFillHiliteAngle    = Parser.ParseDouble(reader.GetAttribute("GradientFillHiliteAngle"));
            r.GradientStrokeHiliteLength = Parser.ParseDouble(reader.GetAttribute("GradientStrokeHiliteLength"));
            r.GradientStrokeHiliteAngle  = Parser.ParseDouble(reader.GetAttribute("GradientStrokeHiliteAngle"));
            r.AppliedObjectStyle         = System.Convert.ToString(reader.GetAttribute("AppliedObjectStyle"));
            r.CornerOption               = (CornerOptions?)Parser.ParseEnum <CornerOptions>(reader.GetAttribute("CornerOption"));
            r.Visible                    = Parser.ParseBoolean(reader.GetAttribute("Visible"));
            r.Name                       = System.Convert.ToString(reader.GetAttribute("Name"));
            r.TopLeftCornerOption        = (CornerOptions?)Parser.ParseEnum <CornerOptions>(reader.GetAttribute("TopLeftCornerOption"));
            r.TopRightCornerOption       = (CornerOptions?)Parser.ParseEnum <CornerOptions>(reader.GetAttribute("TopRightCornerOption"));
            r.BottomLeftCornerOption     = (CornerOptions?)Parser.ParseEnum <CornerOptions>(reader.GetAttribute("BottomLeftCornerOption"));
            r.BottomRightCornerOption    = (CornerOptions?)Parser.ParseEnum <CornerOptions>(reader.GetAttribute("BottomRightCornerOption"));
            r.TopLeftCornerRadius        = Parser.ParseDouble(reader.GetAttribute("TopLeftCornerRadius"));
            r.TopRightCornerRadius       = Parser.ParseDouble(reader.GetAttribute("TopRightCornerRadius"));
            r.BottomLeftCornerRadius     = Parser.ParseDouble(reader.GetAttribute("BottomLeftCornerRadius"));
            r.BottomRightCornerRadius    = Parser.ParseDouble(reader.GetAttribute("BottomRightCornerRadius"));
            r.ItemTransform              = TransformationMatrixType.Parse(reader.GetAttribute("ItemTransform"));
        }

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

        while (reader.Read())
        {
            if ((string)reader.Name == "Properties")
            {
                while (reader.Read())
                {
                    if ((string)reader.Name == "PathGeometry")
                    {
                        r.PathGeometry = PathGeometry.ReadXml(reader);
                    }
                    else if ((string)reader.Name == "Properties")
                    {
                        if (reader.NodeType == XmlNodeType.EndElement)
                        {
                            break;
                        }
                    }
                    else
                    {
                        if (reader.NodeType == XmlNodeType.Element)
                        {
                            Debug.WriteLine("Unrecognized element: {0} in element: {1}", reader.Name, "Rectangle - Properties");
                        }
                    }
                }
            }
            else if ((string)reader.Name == "TextWrapPreference")
            {
                r.TextWrapPreference = TextWrapPreference.ReadXml(reader);
            }
            else if ((string)reader.Name == "InCopyExportOption")
            {
                r.InCopyExportOption = InCopyExportOption.ReadXml(reader);
            }
            else if ((string)reader.Name == "Rectangle")
            {
                if (reader.NodeType == XmlNodeType.EndElement)
                {
                    break;
                }
            }
            else
            {
                if (reader.NodeType == XmlNodeType.Element)
                {
                    Debug.WriteLine("Unrecognized element: {0} in element: {1}", reader.Name, "Rectangle");
                }
            }
        }

        return(r);
    }