Ejemplo n.º 1
0
        public IInnerTransform FromComposite(OpenXmlCompositeElement sdkCompositeElement)
        {
            IInnerTransform innerTransform;
            var             t2d = sdkCompositeElement.Descendants <A.Transform2D>().FirstOrDefault();

            if (t2d != null)
            {
                // Group
                if (sdkCompositeElement.Parent is P.GroupShape groupShape)
                {
                    innerTransform = new NonPlaceholderGroupedTransform(sdkCompositeElement, groupShape);
                }
                // ShapeTree
                else
                {
                    innerTransform = new NonPlaceholderTransform(sdkCompositeElement);
                }
            }
            else
            {
                var placeholderLocationData = _phService.TryGet(sdkCompositeElement);
                innerTransform = new PlaceholderTransform(placeholderLocationData);
            }

            return(innerTransform);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Gets
        /// </summary>
        /// <param name="sdkCompositeElement"></param>
        /// <returns></returns>
        public ILocation FromComposite(OpenXmlCompositeElement sdkCompositeElement)
        {
            Check.NotNull(sdkCompositeElement, nameof(sdkCompositeElement));

            ILocation innerTransform;
            var       aTransform = sdkCompositeElement.Descendants <A.Transform2D>().FirstOrDefault();

            if (aTransform != null ||
                sdkCompositeElement.Descendants <P.Transform>().FirstOrDefault() != null)   // p:graphicFrame contains p:xfrm
            {
                // Group
                if (sdkCompositeElement.Parent is P.GroupShape groupShape)
                {
                    innerTransform = new NonPlaceholderGroupedTransform(sdkCompositeElement, groupShape);
                }
                // ShapeTree
                else
                {
                    innerTransform = new NonPlaceholderTransform(sdkCompositeElement);
                }
            }
            else
            {
                var placeholderLocationData = _phService.TryGetLocation(sdkCompositeElement);
                innerTransform = new PlaceholderTransform(placeholderLocationData);
            }

            return(innerTransform);
        }