2015-09-30 2 views
1

Я немного обрезал, поэтому, если есть недостаток контекста, извините, я отредактирую.Я пытаюсь вставить изображение в документ Excel, используя ExcelLibrary с изображением и CellAnchor, и изображение не отображается

Я не получаю никаких ошибок и отсутствует изображение, кажется, добавить к объекту рабочей книги ...

Я также попытался просто вставить в новую ячейку(), но когда я получаю к экономии к потоку он получает значение Invalid Cell.

Я использую эту ссылку в качестве ссылки: 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()); 

ответ

1

Этого question and answer использует Microsoft.Interop Excel, но он выполняет ту же задачу. Наверное, не тот ответ, который вам нужен, но я получил его, чтобы он работал нормально. Конечно, я уже использовал материал interop, просто нужно немного изменить код, чтобы заставить его работать.

Интересно, если вы забыли добавить ExcelLibrary эквивалент

pic.Placement = // Can be any of Excel.XlPlacement.XYZ value 
+0

еще дает вам точку, так как он видел, что различные методы использовали разные типы файлов, которые вдохновили меня на то, что в итоге получилось работать. – user1040975

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

How Do I Create a System.Windows.Media.ImageSource From a Byte Array?

Смежные вопросы