Прямой путь
- Код: Выделить всё
Chart.SaveToBitmapFile('FieName');
Sheet.WriteImage(1,1,'FileName',0.0,0.0,0.01,0.01);
fpSpreadSheet представляет еще ф-цию вставки рисунка
- Код: Выделить всё
Sheet.WriteImage(1,1,TStream,0.0,0.0,0.01,0.01);
Вопрос: как поместить Chart в Stream?
Добавлено спустя 14 часов 56 минут:
Вот решение
- Код: Выделить всё
uses ....clipbrd
var
myBmp:TBitmap;
ms:TMemoryStream;
begin
Chart.CopyToClipboardBitmap; //копируем в буфер
myBmp:=TBitMap.Create;
myBmp.LoadFromClipboardFormat(CF_BitMap); //читаем из буфера в bmp
ms:=TMemoryStream.Create;
myBmp.SaveToStream(ms); //грузим в Stream
ms.Seek(0, soFromBeginning);
wSheet.WriteImage(1,1,ms,0.0,0.0,0.01,0.01); //вставляем картинку
//1,1 - строка,колонка ячейки; 0.0,0.0 - смещение картинки отн. лев.верхн. угла ячейки;0.01,0.01 - масштаб (здесь уменьшен в 100 раз)
ms.Free;
myBmp.Free;
end;