public override ShapeEx Create(OpenXmlElement sdkElement) { Check.NotNull(sdkElement, nameof(sdkElement)); P.Picture sdkPicture; if (sdkElement is P.Picture treePic) { sdkPicture = treePic; } else { var framePic = sdkElement.Descendants <P.Picture>().FirstOrDefault(); sdkPicture = framePic; } if (sdkPicture != null) { var pBlipFill = sdkPicture.GetFirstChild <P.BlipFill>(); var blipRelateId = pBlipFill?.Blip?.Embed?.Value; if (blipRelateId == null) { return(null); } var pictureEx = new PictureEx(_sdkSldPart, blipRelateId); var spContext = _shapeContextBuilder.Build(sdkElement); var innerTransform = _transformFactory.FromComposite(sdkPicture); var geometry = _geometryFactory.ForPicture(sdkPicture); var shape = _shapeBuilder.WithPicture(innerTransform, spContext, pictureEx, geometry); return(shape); } if (Successor != null) { return(Successor.Create(sdkElement)); } return(null); }