Форум: "Начинающим";
Текущий архив: 2005.12.25;
Скачать: [xml.tar.bz2];
ВнизЧто делаю не так? Найти похожие ветки
← →
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;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.013 c