TAdvStringGrid to 图片 |
尚未結案
|
shihuashi
一般會員 發表:4 回覆:4 積分:1 註冊:2004-06-03 發送簡訊給我 |
|
hagar
版主 發表:143 回覆:4056 積分:4445 註冊:2002-04-14 發送簡訊給我 |
var bmp: TBitmap; begin bmp := TBitmap.Create; try bmp.Width := PaintBox1.Width; bmp.Height := PaintBox1.Height; PaintBox1.Canvas.Draw(0, 0, bmp); bmp.SaveToFile('c:\xx.bmp'); finally bmp.Free; end; end;另外, TAdvStringGrid 應該也可以這麼做, 如果 TAdvStringgrid 的內容沒有須要 Scrollbar 來全部顯示的話 |
shihuashi
一般會員 發表:4 回覆:4 積分:1 註冊:2004-06-03 發送簡訊給我 |
|
shihuashi
一般會員 發表:4 回覆:4 積分:1 註冊:2004-06-03 發送簡訊給我 |
我试了一下你的方法,保存的为空白的图片,下面是我实现的方法,保存的为jpg图片,这里只是获得了jpg,保存另外写的,painbox放在Panel上,:
var
bmpscreen:Tbitmap;
jpegscreen:Tjpegimage;
FullscreenCanvas:TCanvas;
dc:HDC;
sourceRect, destRect: TRect;
begin
dc:=getdc(self.SnPanel2.Handle);
fullscreencanvas:=Tcanvas.Create;
fullscreencanvas.Handle:=dc;
bmpscreen:=Tbitmap.create;
bmpscreen.Width :=self.Paintbox1.Width ;
bmpscreen.Height :=self.PaintBox1.Height ;
sourcerect := self.PaintBox1.ClientRect;
destrect := self.PaintBox1.ClientRect;
bmpscreen.Canvas.CopyRect(sourcerect,fullscreenCanvas,destrect);
jpegscreen:=Tjpegimage.Create ;
jpegscreen.Assign (bmpscreen);
jpegscreen.CompressionQuality:=50;
jpegscreen.SaveToStream (jpegStream1);
jpegStream1.Position :=0;
FullscreenCanvas.Free;
bmpscreen.Free;
jpegscreen.Free ;
ReleaseDC(0, DC);
end;
|
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |