internal override void GetXml() { _colors = new ExcelDrawingGradientFillColorList(_xml.NameSpaceManager, _xml.TopNode, ColorsPath, _schemaNodeOrder); RotateWithShape = _xml.GetXmlNodeBool("@rotWithShape"); try { var s = _xml.GetXmlNodeString("@flip"); if (string.IsNullOrEmpty(s)) { TileFlip = eTileFlipMode.None; } else { TileFlip = (eTileFlipMode)Enum.Parse(typeof(eTileFlipMode), s, true); } } catch { TileFlip = eTileFlipMode.None; } var cols = _xml.TopNode.SelectSingleNode("a:gsLst", _xml.NameSpaceManager); if (cols != null) { foreach (XmlNode c in cols.ChildNodes) { var xml = XmlHelperFactory.Create(_xml.NameSpaceManager, c); _colors.Add(xml.GetXmlNodeDouble("@pos") / 1000, c); } } var path = _xml.GetXmlNodeString("a:path/@path"); if (!string.IsNullOrEmpty(path)) { if (path == "rect") { path = "rectangle"; } ShadePath = path.ToEnum(eShadePath.Linear); } else { ShadePath = eShadePath.Linear; } if (ShadePath == eShadePath.Linear) { LinearSettings = new ExcelDrawingGradientFillLinearSettings(_xml); } else { FocusPoint = new ExcelDrawingRectangle(_xml, "a:path/a:fillToRect/", 0); } }
internal override void GetXml() { var relId = _xml.GetXmlNodeString("a:blip/@r:embed"); if (!string.IsNullOrEmpty(relId)) { _image = PictureStore.GetPicture(relId, this, out string contentType); ContentType = contentType; } SourceRectangle = new ExcelDrawingRectangle(_xml, "a:srcRect/", 0); Stretch = _xml.ExistNode("a:stretch"); if (Stretch) { StretchOffset = new ExcelDrawingRectangle(_xml, "a:stretch/a:fillRect/", 0); } Tile = new ExcelDrawingBlipFillTile(_xml); }