图象存取问题!(150分)

  • 主题发起人 主题发起人 YinZu
  • 开始时间 开始时间
Y

YinZu

Unregistered / Unconfirmed
GUEST, unregistred user!
如何实现这样的功能:
数据据库中有图像形字段,当在客户端查询到图像时,只从服务器传回一个缩略图,
当用户要放大显示时再把真正的图传到客户端,有点像网页上图像显示一样,
这样做是考虑到网络传输的问题,如果一查到图像就全部传回客户端,这样会很慢,
并且有些图片也不是用户想要的,有缩略图能很直观的显示查到的结果也不会影响速度,
(缩略图要很小),请有这方面经验的大侠帮助,提供些资料或是建议,先感谢了,
如果显示缩略图很难实现的话,也可没有缩略图,当用户点击显示图片时再传回图片,
但是要保证速度,
(分不够可以再加)
 
//图片的缩小加压缩
uses
...,jpeg,...
...
var
bitmap,bmp:TBitmap;
jpg:TJpegimage;
begin
...
try
bmp.Width:=700;
bmp.Height:=525;
//缩小图片
SetStretchBltMode(bmp.Canvas.Handle,COLORONCOLOR);
StretchBlt(bmp.Canvas.Handle,0,0,700,525,bitmap.Canvas.Handle,0,0,bitmap.Width,bitmap.Height,srccopy);
finally

end;

jpg.Assign(bmp); //将图象转成JPG格式
jpg.CompressionQuality:=50;//压缩
jpg.Compress;
jpg.SaveToStream(m1); //将JPG图象写入流中
jpg.free;
...
end;
 
缩略图可以做,现成的工具即可批量地生成图像索引和缩略图(你可以在华军搜索),数据库可以存相对路径,没有必要把图片存进去,造成不必要的开销。其他的我想不出还有什么问题了。
 
用sql语句选择字段(别选图像字段,或者选缩略图字段)。在客户端点击时再发一条sql专取特定记录的图像字段。
 
同意Pearl的做法!
 
我就先用sql语句查询字段不带图片的,然后用户想浏览了再用sql语句查询有图片的字段
 
可以在存储图片的时候同时生成一张缩略图存进去,显示的时候先显示缩略图,
需要的时候再显示图片。也可以象Pearl那样。
 
同意使用路径保存图片,我以前做的系统也是这么做的
同意提前做好缩略图
 
多人接受答案了。
 
后退
顶部