예제 #1
0
        private static OXmlAnchorWrapSquare CreateAnchorWrapSquare(BsonDocument element)
        {
            OXmlAnchorWrapSquare wrapSquare = new OXmlAnchorWrapSquare();

            if (element != null)
            {
                wrapSquare.WrapText           = element.zGet("WrapText").zAsString().zTryParseEnum(DW.WrapTextValues.BothSides);
                wrapSquare.DistanceFromTop    = element.zGet("DistanceFromTop").zAsNullableInt();
                wrapSquare.DistanceFromBottom = element.zGet("DistanceFromBottom").zAsNullableInt();
                wrapSquare.DistanceFromLeft   = element.zGet("DistanceFromLeft").zAsNullableInt();
                wrapSquare.DistanceFromRight  = element.zGet("DistanceFromRight").zAsNullableInt();
                wrapSquare.EffectExtent       = CreateEffectExtent(element.zGet("EffectExtent").zAsBsonDocument());
            }
            return(wrapSquare);
        }
예제 #2
0
        //public void SetWrapSquare(EnumValue<DW.WrapTextValues> wrapText, uint distanceFromTop = 0, uint distanceFromBottom = 0, uint distanceFromLeft = 0, uint distanceFromRight = 0, DW.EffectExtent effectExtent = null)
        private OpenXmlElement CreateWrapSquare(OXmlAnchorWrapSquare wrap)
        {
            // <wp:wrapSquare wrapText="bothSides" distB="57150" distT="57150" distL="57150" distR="57150"/>
            // <wp:wrapSquare wrapText="bothSides"/>

            //Square Wrapping, <wp:wrapSquare>
            DW.WrapSquare wrapElement = new DW.WrapSquare();

            // Text Wrapping Location, <wp:wrapSquare wrapText>
            // BothSides - Both Sides ("bothSides"), Left - Left Side Only ("left"), Right - Right Side Only ("right"), Largest - Largest Side Only ("largest")
            //wrapElement.WrapText = wrapText;
            wrapElement.WrapText = wrap.WrapText;

            if (wrap.DistanceFromTop != null)
            {
                // Distance From Text (Top), <wp:wrapSquare distT>
                wrapElement.DistanceFromTop = (uint)wrap.DistanceFromTop;
            }
            if (wrap.DistanceFromBottom != null)
            {
                // Distance From Text on Bottom Edge, <wp:wrapSquare distB>
                wrapElement.DistanceFromBottom = (uint)wrap.DistanceFromBottom;
            }
            if (wrap.DistanceFromLeft != null)
            {
                // Distance From Text on Left Edge, <wp:wrapSquare distL>
                wrapElement.DistanceFromLeft = (uint)wrap.DistanceFromLeft;
            }
            if (wrap.DistanceFromRight != null)
            {
                // Distance From Text on Right Edge, <wp:wrapSquare distR>
                wrapElement.DistanceFromRight = (uint)wrap.DistanceFromRight;
            }

            if (wrap.EffectExtent != null)
            {
                // Object Extents Including Effects <wp:effectExtent>
                //   BottomEdge : Additional Extent on Bottom Edge (b)
                //   LeftEdge   : Additional Extent on Left Edge (l)
                //   RightEdge  : Additional Extent on Right Edge (r)
                //   TopEdge    : Additional Extent on Top Edge (t)
                // <wp:effectExtent b="0" l="0" r="0" t="0"/>
                wrapElement.EffectExtent = wrap.EffectExtent.ToEffectExtent();
            }

            //_wrapElement = wrapElement;
            return(wrapElement);
        }
예제 #3
0
 private static void SerializeWrapSquare(BsonWriter bsonWriter, OXmlAnchorWrapSquare wrap)
 {
     bsonWriter.WriteStartDocument("WrapSquare");
     //if (wrap.WrapText != DW.WrapTextValues.BothSides)
     bsonWriter.WriteString("WrapText", wrap.WrapText.ToString());
     if (wrap.DistanceFromTop != null)
     {
         bsonWriter.WriteInt32("DistanceFromTop", (int)wrap.DistanceFromTop);
     }
     if (wrap.DistanceFromBottom != null)
     {
         bsonWriter.WriteInt32("DistanceFromBottom", (int)wrap.DistanceFromBottom);
     }
     if (wrap.DistanceFromLeft != null)
     {
         bsonWriter.WriteInt32("DistanceFromLeft", (int)wrap.DistanceFromLeft);
     }
     if (wrap.DistanceFromRight != null)
     {
         bsonWriter.WriteInt32("DistanceFromRight", (int)wrap.DistanceFromRight);
     }
     SerializeEffectExtent(bsonWriter, wrap.EffectExtent);
     bsonWriter.WriteEndDocument();
 }