请问:SQL怎样存取 .png格式的图片?
     想在添加记录的时候,通过打开图片的方式,显示到image中,然后再对其存取,
     对jpg/bmp格式的存取可以实现,对png格式的就会出错,不知道用什么什么可行?   在网上也搜了,说到用文件流的方法,但不知道用什么显示到image里,这样直接清楚.谢谢回答,认真给分!

解决方案 »

  1.   

    如有相关方面的小实例可参考也可,e_mail:[email protected]
      

  2.   

    png可以用 gdi+读
    省事的话用 
    http://www.2ccc.com/article.asp?articleid=967
    控件之类的
      

  3.   

    楼上用控件的方法我也去试试,用流的文件流的方法到底怎么实现?image是否支持png格式的文件显示?
      

  4.   

    sql存取图像文件与格式无关,我不知你是用什么方法对jpg/bmp格式进行存取的.
    从文件读到数据库,可用参数,然后
    ADOQuery1.Parameters[1].LoadFromFile('e:\temp\025.png',ftBlob);
    或从流中读到数据库
    ADOQuery1.Parameters.ParamByName('pic').LoadFromStream(testStream1,ftBlob);
    取出来时相反:
      TBlobField(ADOQuery.FieldByName('pic')).SaveToFile('e:\temp\025.png');

      TBlobField(ADOQuery.FieldByName('pic')).SaveToStream(mStream1);
    至于png格式的文件显示,TImage是不支持的,你可用第三方的控件,如ImageEn
    (对于sql存取图像,网上有很多,你搜一下)
      

  5.   

    如果你手上有Gdiplus for Delphi,我可教你怎样直接用TImage装入,显示和保存png文件