Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.12.25;
Скачать: CL | DM;

Вниз

Что делаю не так?   Найти похожие ветки 

 
De1uxe ©   (2005-12-07 22:17) [0]

Уважаемые мастера помогите пожалуйста.
Имеется следующий код:

  myrect:=rect(10,10,100,100);
  bitmap:=tbitmap.Create;
  bitmap1:=tbitmap.Create;
  bitmap1.LoadFromFile("c:\2.bmp");
  Bitmap.Canvas.CopyRect(myrect,bitmap1.Canvas,myrect);
  bitmap.SaveToFile("c:\1.bmp");

Вот что я хочу от этого кода:
1. Открыл изображение 2.bmp
2. Отрезал прямоугольник с координатами (10,10,100,100)
3. Сохранил отрезаный кусок в 1.bmp
     Но вместо этого я ничего ну получаю в файле 1.bmp
В чем дело?


 
Reindeer Moss Eater ©   (2005-12-07 22:25) [1]

Видимо в том, что размеры bitmap 0х0


 
Джо ©   (2005-12-07 22:26) [2]


procedure ExtractBitmapToFile (SrcBmp: TBitmap; Rect: TRect;
 AFileName: string);
var
 DestBmp: TBitmap;
 DestRect: TRect;
begin
 DestBmp := TBitmap.Create;
 try
   DestRect.Left := 0;
   DestRect.Top := 0;
   DestRect.Right := Rect.Right-Rect.Left;
   DestRect.Bottom := Rect.Bottom-Rect.Top;

   DestBmp.Width := DestRect.Right;
   DestBmp.Height := DestRect.Bottom;

   DestBmp.Canvas.CopyRect(DestRect,SrcBmp.Canvas,Rect);

   DestBmp.SaveToFile(AFileName);
 finally
   DestBmp.Free;
 end;
end;

Использовать:

procedure TForm1.Button1Click(Sender: TObject);
begin
 ExtractBitmapToFile(
   Image1.Picture.Bitmap,
   Rect(10,10,100,100),
   "d:\dest.bmp"
   );
end;

Может что-то напутал, писал наскоро. Но вроде работает, как ожидается.


 
De1uxe ©   (2005-12-07 22:33) [3]

Всем большое спасибо! Работает


 
app ©   (2005-12-07 22:42) [4]

Ты не брат ли случайно этому?
http://delphimaster.net/view/2-1133968311/


 
Джо ©   (2005-12-07 23:05) [5]


> [4] app ©   (07.12.05 22:42)

Нет, он брат вот этому:
http://delphimaster.net/view/2-1133968311/
:)


 
Anatoly Podgoretsky ©   (2005-12-08 00:39) [6]

Какой брат - это близнецы, которые не читали правила.



Страницы: 1 вся ветка

Текущий архив: 2005.12.25;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.052 c
2-1133878661
vhs
2005-12-06 17:17
2005.12.25
не рабоатет клавиши delete ?!


14-1133468035
Lamer@fools.ua
2005-12-01 23:13
2005.12.25
М-да уж :/


2-1133782011
Мерцание
2005-12-05 14:26
2005.12.25
Что-то подобное Blink в BP


6-1127134580
Tigraman
2005-09-19 16:56
2005.12.25
Cкачивание файла


2-1133954653
Id
2005-12-07 14:24
2005.12.25
IBDataSet.