请问: l_PicView.Picture.LoadFromFile('d:\1.bmp');这里的loadfromfile后面可以用jpg格式吗?我曾经用过但打印时出错。 我后来是这样处理,也就是我开始说的转化为bmp,只是作个转换再放进报表; ..... Jp:=TJPEGImage.Create; bp:=TBitmap.Create; If Result then begin Try Jp.LoadFromFile(DescPath); //Descpath是jpg文件所在路径 IF Assigned(jp) then With jp do begin DIBNeeded; bp.Assign(jp); end; except bp:=nil; end end Else bp:=nil; TfrPictureView(frReport1.FindObject('Picture1')).Picture.Bitmap:=bp; frReport1.ShowReport; jp.Free; bp.Free; ......
我放入两个frPictureView,一个放入bmp,一个放入jpg,预览正常。保存后再load也正常。
而且我改变了BlobType属性,我发现对于这样直接load进来的图片,这个属性好像没用,对于bmp的图像我把BlobType改成wmf也没错。
不知你的程序是不是使用数据库中的图片,如果是的话,好像只能使用一种类型,如果你的表中既有bmp,又有jpg,在打印时会出错。
procedure TForm1.Button5Click(Sender: TObject);
var
l_PicView:TfrPictureView;
begin
f1.LoadFromFile('w2.frf');
l_PicView:=TfrPictureView(f1.FindObject('picture1'));
l_PicView.Picture.LoadFromFile('d:\1.bmp'); f1.ShowReport;
end;
很高兴和你交朋友。
[email protected]
我也很想去北京,我有许多朋友也在北京。可是,我在锦州。
啊,对了,该吃午饭了,很高兴和你聊天。886。
l_PicView.Picture.LoadFromFile('d:\1.bmp');这里的loadfromfile后面可以用jpg格式吗?我曾经用过但打印时出错。
我后来是这样处理,也就是我开始说的转化为bmp,只是作个转换再放进报表;
.....
Jp:=TJPEGImage.Create;
bp:=TBitmap.Create;
If Result then
begin
Try
Jp.LoadFromFile(DescPath); //Descpath是jpg文件所在路径
IF Assigned(jp) then
With jp do
begin
DIBNeeded;
bp.Assign(jp);
end;
except
bp:=nil;
end
end
Else bp:=nil;
TfrPictureView(frReport1.FindObject('Picture1')).Picture.Bitmap:=bp;
frReport1.ShowReport;
jp.Free;
bp.Free;
......
可惜没分了,如果您想要分,请到另一个贴子上,我给您分。
http://www.csdn.net/expert/topic/461/461514.shtm
当我执行下面的语句时
l_PicView:=TfrPictureView(frReport1.FindObject('Picture1'));
为什么l_PicView的值是nil呢?也就是说找不到对象。明明报表里有Picture1这个对象的。
>l_PicView.Picture.LoadFromFile('d:\1.bmp');
>这里的loadfromfile后面可以用jpg格式吗?我曾经用过但打印时出错。
我用jpg可以,预览正确,打印没试。代码如下:
procedure TForm1.Button5Click(Sender: TObject);
var
l_PicView:TfrPictureView;
begin
f1.LoadFromFile('w2.frf');
l_PicView:=TfrPictureView(f1.FindObject('picture1'));
l_PicView.Picture.LoadFromFile('1.bmp'); l_PicView:=TfrPictureView(f1.FindObject('picture2'));
l_PicView.Picture.LoadFromFile('2.jpg'); f1.ShowReport;
end;to OneStandNight(雪血):
代码已发到你的邮箱。你看看我的代码,再看看你的程序。