bmp파일을 불러서 마우스로 일정부분을 지정하여 지정한만큼을 image2에 나타내고 저장을하려고 하는데.. copy는되는데 저장을하고 다시불러보면 크기는 image2의 크기대로나오고 copy된 부분과 나머지부분은 흰색으로 나타납니다.
image1에서 copy한부분만큼만 저장할려고하는데 도와주세요...
부탁드립니다.
필요하시면 soruce를 보내드릴께요...
- 아래 -
{저장버튼클릭시 저장된는 이벤트}
procedure TForm1.SpeedButton1Click(Sender: TObject);
var
BitMap : TbitMap;
odir : string;
jPeg1 : TjPegimage;
begin
{ ** 편집그림저장 ** }
bitMap := Tbitmap.create;
bitmap.assign( image2.Picture.Graphic );
bitmap.width := image2.Width;
bitmap.Height:= image2.Height;
bitmap.Dormant; // Free up GDI resources
bitmap.SaveToFile( changeFileExt(E_Filename.Text ,'.BMP') );
bitmap.FreeImage; // Free up Memory.
bitmap.Free;
jPeg1 := TjPegimage.create;
jpeg1.assign(image2.Picture.Graphic);
jpeg1.width := image2.Width; <---- 이 두부분에서 error가 나타납니다..
jpeg1.Height:= image2.Height; <----
jpeg1.CompressionQuality := 50;
jpeg1.PixelFormat := jf24Bit;
jpeg1.Compress;
jpeg1.saveTofile( changeFileExt( E_Filename.Text ,'.JPG' ) );
jpeg1.free;
oDir := FileListBox1.Directory;
FileListBox1.directory := '.';
FileListBox1.directory := oDir;
end;