我对OpenXML很新,并且发现EPPlus项目非常有用,但是我需要将注释的背景图像设置为图片。我可以在Excel中执行此操作,但是,我没有看到任何接口显示这样做。
有没有人在OpenXML之前做过这个?或者可以指出一个很好的起点?
谢谢,非常感谢
答案 0 :(得分:1)
我相信EPPlus只允许你设置背景颜色,但不允许你设置图片。在OpenXML中,注释样式(包括背景图像)存储在VML文件中。
如果您使用Open XML SDK,那么它就是Worksheet类下的LegacyDrawing。您必须从LegacyDrawing类获取ID,然后检索VmlDrawingPart类并操作内容。您还必须使用VmlDrawingPart的ImageParts。实际上是一种混乱,实际上......
为方便起见,您可能需要考虑SpreadsheetLight。以下是评论的方法:
SLDocument sl = new SLDocument();
SLComment comm = sl.CreateComment();
comm.SetText("There's a picture background.");
comm.Fill.SetPictureFill("julia.png", 0, 0, 0, 0, 0);
sl.InsertComment(2, 2, comm);
sl.SaveAs("CommentBackground.xlsx");
这将在评论框背景中完全展开图片。
免责声明:我写了SpreadsheetLight。