jpegscreen := Tjpegimage.Create;
jpegscreen.Assign(image1.Picture.Bitmap);//截屏得到的图片
jpegscreen.CompressionQuality := 40;
jpegStream.Create;
jpegscreen.SaveToStream(jpegStream);
imgSize := jpegStream.Size;
jpegStream.SaveToFile('F:\My Document\test.jpg')
这个时候会出错,提示内存某地址有错。
jpegscreen.Assign(image1.Picture.Bitmap);//截屏得到的图片
jpegscreen.CompressionQuality := 40;
jpegStream.Create;
jpegscreen.SaveToStream(jpegStream);
imgSize := jpegStream.Size;
jpegStream.SaveToFile('F:\My Document\test.jpg')
这个时候会出错,提示内存某地址有错。
jpegscreen.Assign(image1.Picture.Bitmap);//截屏得到的图片
jpegscreen.CompressionQuality := 40;
//jpegStream.Create;
//jpegscreen.SaveToStream(jpegStream);
//imgSize := jpegStream.Size;
jpegscreen.SaveToFile('F:\My Document\test.jpg')这个时候就没错,本来想测试完这段代码之后就存进数据库的,所以,要用流的方式。但是,一用流就出错了。请各位帮忙,我是菜鸟,问题白痴的话请见谅
jpegStream.Position := 0;//加這句
jpegStream.SaveToFile('F:\My Document\test.jpg')
jpegStream := TjpegStream.Create;
var Ms:TmemoryStream;
jpg : Tjpegimage;
begin
jpg := Tjpegimage.Create;
ms:=TmemoryStream.Create;
Jpg.Assign(Image1.Picture.Graphic);
Jpg.SaveToStream(Ms) ;
Ms.Position :=0;
ADOquery1.append;
TBlobField(ADOquery1.FieldByName('img')).LoadFromStream(Ms);
ADOquery1.Post;
Ms.Free ;
jpg.free;
end;