近期有个任务,
用delphi开发个简单的指纹采集软件
能够将指纹图像显示出来我从来没弄过相关的图像操作软件只是听两个同事大概的提到说可以先将byte 转换成 流  再从流转换成 图片形式我弄了两天 一个效果都没有特发帖 求求各位大哥 希望给我指条明路 叩谢各位啦!!!我的联系方式是 qq 21723988 tel 15190890258下面是人家提供的供调用的函数名称
我在中间做了些许调整procedure TForm1.FPAPICtrl1FingerPrintState(ASender: TObject;
  var imgDataBuf: Byte; imgWidth, imgHeight, nowStep, nowState: Smallint);
  var
    mybmp : TBitmap;
    n : LongInt;
begin
   //将图片信息保存显示   if nowStep = -1 then
   begin
     mystream := TMemoryStream.Create;
     //mystream.WriteBuffer(imgdatabuf,imgWidth * imgHeight);
     //mystream.ReadBuffer(imgdatabuf,imgWidth * imgHeight);
     //tbob
     mystream.Write(imgdatabuf,imgWidth * imgHeight);
     mystream.Position := 0;
     //n := FPAPICtrl1.GetImgWidth;     mystream.ReadBuffer(mybmp,imgWidth * imgHeight);     //mybmp.SaveToStream(mystream);    // mystream.Read(imgWidth * imgHeight,0);
     //mybmp.LoadFromStream(mystream);
   end;
   //Image1;
end;

解决方案 »

  1.   

    图像缓冲区的图像一般是bmp格式,你把流保存,以后再读取的时候也要读入到bmp格式的对象中才能显示;或者你保存为bmp文件,以后直接用图片控件载入就行;   bmp文件= bmp文件头+数据,你那个流中只有数据,没有文件头。
      

  2.   

    将缓冲区的图象保存至BMP文件 
          aStream:=TMemoryStream.Create; 
          aStream.WriteBuffer(bfh,sizeof(BITMAPFILEHEADER)); 
          aStream.WriteBuffer(m_pBitmapInfo^,sizeof(BITMAPINFOHEADER)); 
          aStream.WriteBuffer(m_pImageBuffer[BufferIndex]^,dwImageSize);       //aStream.SaveToFile(DestName); 
          aBitmap:=TBitmap.Create; 
          aStream.Position:=0; 
          aBitmap.LoadFromStream(aStream); 
          showmessage(inttostr(aBitmap.Width)); 
          aBitmap.SaveToFile(DestName);     见
    http://topic.csdn.net/u/20070401/12/880885a0-e183-4431-a203-b283d654cec9.html