L
liling
Unregistered / Unconfirmed
GUEST, unregistred user!
现在现在网上实现图像的传输,本地端是BMP图像,由于较大,故先转为
JPEG格式,然后打包、发送。想用TJpegImage控件完成,但好像不能直
接访问该控件里的数据,所以想通过一个TStream作过渡,再由该TStream
写入一数组中,但程序出错。
tempJpeg:=TJPEGImage.Create;
tempJpeg.Assign(tempBmp);
tempJpeg.JPEGNeeded;
tempJpeg.CompressionQuality:=50;
tempJpeg.Compress;
tempStream:=TStream.Create;
tempBmp.Free;
tempJpeg.SaveToStream(tempStream);
tempJpeg.Free;
当运行到SaveToStream时,程序出错,报告说
‘EAbstractError‘。Help中有一段说明:
SaveToStream expects JPEG image data and may
incur overhead of a compression cycle if the
source is a bitmap.
意思好像是这样不安全。请有经验的高手指教。
当然,别的方案也有,比如先写入一个文件,再读出来,
但总觉得这样太傻。另外,是否有别的方案?比如直接
调API函数?是否有例程?
JPEG格式,然后打包、发送。想用TJpegImage控件完成,但好像不能直
接访问该控件里的数据,所以想通过一个TStream作过渡,再由该TStream
写入一数组中,但程序出错。
tempJpeg:=TJPEGImage.Create;
tempJpeg.Assign(tempBmp);
tempJpeg.JPEGNeeded;
tempJpeg.CompressionQuality:=50;
tempJpeg.Compress;
tempStream:=TStream.Create;
tempBmp.Free;
tempJpeg.SaveToStream(tempStream);
tempJpeg.Free;
当运行到SaveToStream时,程序出错,报告说
‘EAbstractError‘。Help中有一段说明:
SaveToStream expects JPEG image data and may
incur overhead of a compression cycle if the
source is a bitmap.
意思好像是这样不安全。请有经验的高手指教。
当然,别的方案也有,比如先写入一个文件,再读出来,
但总觉得这样太傻。另外,是否有别的方案?比如直接
调API函数?是否有例程?