Главная страница
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.48 MB
Время: 0.063 c
4-1130413470
V-A-V
2005-10-27 15:44
2005.12.25
Вызов справки из chm файла


1-1133267416
AlexBurton
2005-11-29 15:30
2005.12.25
Необходимо защитить или зашифровать число от его изменения


14-1133363727
Jimmy
2005-11-30 18:15
2005.12.25
Преобразование строки в формулу


14-1133363929
oldman
2005-11-30 18:18
2005.12.25
Вот такой интересный вопрос правайдерам...


6-1126542746
pr0t0n
2005-09-12 20:32
2005.12.25
pochemu ne rabotaet????