1

我修剪了很多,所以如果缺少上下文对不起,我会编辑。

我没有收到任何错误,而且图片似乎确实被添加到了工作簿对象中......

我也试过只插入一个新的单元格(),但是当我保存到流中时,它会得到一个无效的单元格值。

我使用此链接作为参考:https ://excellibrary.googlecode.com/svn-history/r51/trunk/src/ExcelLibrary.WinForm/Form1.cs

Workbook wBook = new Workbook();
Worksheet wSheet = new Worksheet();
//getting my file
var path = context.Server.MapPath("~/data/default/content/logo.bmp");
pic.Image = ExcelLibrary.SpreadSheet.Image.FromFile(path);
pic.TopLeftCorner = new CellAnchor(5, 1, 0, 0);
pic.BottomRightCorner = new CellAnchor(7, 5, 592, 243);

wSheet.AddPicture(pic);
wSheet.Cells[rows, 0] = new Cell("some text");
wBook.Worksheets.Add(wSheet);

context.Response.AddHeader("Content-Disposition","Attachment;Filename=PlattShoppingCart.xls");
context.Response.ContentType = "application/vnd.ms-excel";
MemoryStream stream = new MemoryStream();
wBook.SaveToStream(stream);
context.Response.BinaryWrite(stream.ToArray());
4

2 回答 2

1

这个问题和答案使用 Microsoft.Interop Excel,但它完成了相同的任务。可能不是您需要的答案,但我让它工作得很好。当然,我已经在使用互操作的东西了,只需要稍微修改一下代码就可以了。

我想知道您是否忘记添加等效的 ExcelLibrary

pic.Placement = // Can be any of Excel.XlPlacement.XYZ value
于 2015-10-01T06:57:55.620 回答
0

我不知道它只是我还是它实际上不在文档中的任何地方,但 *.bmp、*.jpeg、*.gif' 不受支持,只需将其转换为 .png 即可工作... .

感谢您的链接,因为这是一种将其与其他方法进行比较的体验。如果您发现自己已经走到了这一步,但仍然遇到问题,这里有一些其他链接:

http://www.codeproject.com/Questions/793324/How-Do-I-Insert-Jpg-Image-From-File-Stream

http://www.codeproject.com/Questions/84487/How-to-insert-a-picture-image-in-XML-spreadsheet

如何从字节数组创建 System.Windows.Media.ImageSource?

于 2015-10-01T16:28:19.763 回答