diff --git a/ClosedXML/Excel/IXLWorksheet.cs b/ClosedXML/Excel/IXLWorksheet.cs index 7117744..b5aecd7 100644 --- a/ClosedXML/Excel/IXLWorksheet.cs +++ b/ClosedXML/Excel/IXLWorksheet.cs @@ -434,6 +434,8 @@ IXLPictures Pictures { get; } + IXLPicture Picture(String pictureName); + IXLPicture AddPicture(Stream stream); IXLPicture AddPicture(Stream stream, String name); @@ -450,4 +452,4 @@ IXLPicture AddPicture(String imageFile, String name); } -} \ No newline at end of file +} diff --git a/ClosedXML/Excel/XLWorksheet.cs b/ClosedXML/Excel/XLWorksheet.cs index ceb8cc7..6579424 100644 --- a/ClosedXML/Excel/XLWorksheet.cs +++ b/ClosedXML/Excel/XLWorksheet.cs @@ -1523,6 +1523,11 @@ public IXLPictures Pictures { get; private set; } + public IXLPicture Picture(string pictureName) + { + return Pictures.Picture(pictureName); + } + public IXLPicture AddPicture(Stream stream) { return Pictures.Add(stream); diff --git a/ClosedXML_Tests/ClosedXML_Tests.csproj b/ClosedXML_Tests/ClosedXML_Tests.csproj index 47cca6a..ba753e5 100644 --- a/ClosedXML_Tests/ClosedXML_Tests.csproj +++ b/ClosedXML_Tests/ClosedXML_Tests.csproj @@ -272,6 +272,7 @@ + diff --git a/ClosedXML_Tests/Excel/Loading/LoadingTests.cs b/ClosedXML_Tests/Excel/Loading/LoadingTests.cs index 5d53a55..8a87569 100644 --- a/ClosedXML_Tests/Excel/Loading/LoadingTests.cs +++ b/ClosedXML_Tests/Excel/Loading/LoadingTests.cs @@ -22,7 +22,8 @@ @"Misc\EmptyTable.xlsx", @"Misc\LoadPivotTables.xlsx", @"Misc\LoadFileWithCustomSheetViews.xlsx", - @"Misc\LoadSheetsWithCommas.xlsx" + @"Misc\LoadSheetsWithCommas.xlsx", + @"Misc\ExcelProducedWorkbookWithImages.xlsx" }; foreach (var file in files) @@ -152,5 +153,20 @@ Assert.AreEqual(XLPictureFormat.Png, ws2.Pictures.First().Format); } } + + [Test] + public void CanLoadAndDeduceAnchorsFromExcelGeneratedFile() + { + using (var stream = TestHelper.GetStreamFromResource(TestHelper.GetResourcePath(@"Misc\ExcelProducedWorkbookWithImages.xlsx"))) + using (var wb = new XLWorkbook(stream)) + { + var ws = wb.Worksheets.First(); + Assert.AreEqual(3, ws.Pictures.Count); + + Assert.AreEqual(XLPicturePlacement.MoveAndSize, ws.Picture("Picture 1").Placement); + Assert.AreEqual(XLPicturePlacement.Move, ws.Picture("Picture 2").Placement); + Assert.AreEqual(XLPicturePlacement.FreeFloating, ws.Picture("Picture 3").Placement); + } + } } } diff --git a/ClosedXML_Tests/Resource/Misc/ExcelProducedWorkbookWithImages.xlsx b/ClosedXML_Tests/Resource/Misc/ExcelProducedWorkbookWithImages.xlsx new file mode 100644 index 0000000..62a8107 --- /dev/null +++ b/ClosedXML_Tests/Resource/Misc/ExcelProducedWorkbookWithImages.xlsx Binary files differ