我在内存中创建了一个位图,并希望在好的报表设计时间中显示它。我不想创建一个文件然后加载。还有更好的方法吗?
谢谢和问候, JAI
答案 0 :(得分:0)
这是我前一段时间为学校项目编写的代码片段。我认为我在其中进行了相当多的研究而无法找到另一种方式......我认为代码很清楚,看看我是如何做到的:使用剪贴板。 cMohr是TChart组件。
我现在没有安装Delphi,所以我无法测试它,但它应该可以工作!
with Sender as TBaseReport do
begin
SetFont('Arial', 15);
Title := 'JTester results';
PrintHeader('JTester results', pjCenter);
// Mohr Circle
bmp := TBitmap.Create;
cMohr.Color := clWhite;
cMohr.CopyToClipboardBitmap;
cMohr.Color := clBtnFace;
bmp.LoadFromClipboardFormat(cf_BitMap,ClipBoard.GetAsHandle(cf_Bitmap),0);
PrintBitmapRect(0.2,0.5,PageWidth-0.4,(PageWidth-0.4)*bmp.Height/bmp.Width,bmp);
..
..
答案 1 :(得分:0)
您可以将LoadFromStream用于TBitmap,然后在RAVE中使用该位图。