请问各位大虾如何用FastReport打印出数据库中存放的 .jpg 图片?

解决方案 »

  1.   

    将数据库的图片先显示在image控件上
    procedure TForm4.frReport1BeforePrint(Memo: TStringList; View: TfrView);
    begin
    if view.Name='Picture1' then
    TfrPictureView(view).Picture.assign(Image1.Picture);
    end;
      

  2.   

    没用的,打印时是空白的,如果是BMP的没问题
      

  3.   

    如何将bmp文件转化成jpg文件及将jpg文件转化成bmp文件
    procedure ConvertBMPtoJPG(filename:string);
    Var
        J:TJpegImage;
        I:TBitmap;
        S:String;
    begin
        s:=filename;
        J:=TJpegImage.Create;
        I:=TBitmap.Create;
        I.LoadFromFile(s);
        J.Assign(I);
        I.Free;    s:=changefileext(s, '.jpg');
        J.SaveToFile(s);
        Application.processmessages;
        J.Free;
    end;
    procedure ConvertJPGtoBMP(filename:string);
    Var
        J:TJpegImage;
        I:TBitmap;
        s:string;
    begin
        s:=filename;
        I:=TBitmap.Create;
        J:=TJpegImage.Create;
        J.LoadFromFile(s);
        I.Assign(J);
        J.Free;    s:=changefileext(s, '.bmp');
        I.SaveToFile(s);
        I.Free;
        Application.processmessages;
    end;
      

  4.   

    假设数据库的图片字段为image1
    procedure TForm2.tupian();
    var
      B:Tbitmap;
      JpegImage:TJpegImage;
      BS:TadoBlobStream;
    begin
     try//如果是Jpeg格式
      BS := TadoBlobStream.Create(TBlobField(ADOQuery1image1), bmRead);
      JpegImage := TJpegImage.Create;
      JpegImage.JPEGNeeded;
      JpegImage.LoadFromStream(BS);
      Image1.Picture.Assign(JpegImage);
      JpegImage.Free;
      BS.Free;
     except//如果是BMP格式
      BS := TadoBlobStream.Create(TBlobField(ADOQuery1image1), bmRead);
      B:=Tbitmap.Create;
      b.LoadFromStream(BS);
      Image1.Picture.Assign(b);
      B.Free;
      BS.Free;
     end;
    end;
    end;procedure TForm2.frReport1BeforePrint(Memo: TStringList; View: TfrView);
    begin
    if view.Name='Picture1' then
    TfrPictureView(view).Picture.assign(Image1.Picture);
    end;
      

  5.   

    我目前做法是先将JPG格式的转存成BMP后再指定文件目录打印,但我觉得不够理想,特别是跟数据挂在一起的时候。我想做一个计算字段不知可不可以(即将JPG直接转成BMP字段)?