![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Работа с рисунками [D6, WinXP]
DTK © (2003-01-20 15:17:00)Мастера! Мне нужно вырезать кусок изображения (кусок Imag-а) и сохранить его в файл.
Может кто-нибудь по-подробнее расскажет о CopyRect, а то я так понял он вырезает кусок рисунка, но этот кусок остается на этой же канве и соответственно отдельно в файл сохранен быть не может.
Заранее спасибо!
Magic (2003-01-22 11:03:00) [1]BMP2.Width := ширине выделенного в Image.Picture.Bitmap; {определяем значение ширины BMP2}
BMP2.Height := высоте выделенного в Image.Picture.Bitmap; {определяем значение высоты BMP2}
Это нужно обязательно!
Kettle of delphi (2003-01-20 19:15:00) [2]Вот, как, примерно, нужно сделать:
procedure CopySelectToFile (var Image: TImage; FNstr: String);
vat BMP2: TBitMap;
begin
BMP2 := TBitMap.Create; {создаем клон структуры TBitMap}
BMP2.PixelFormat := Image.Picture.Bitmap.PixelFormat; {определяем разрядность BMP2}
BMP2.Width := ширине выделенного в Image.Picture.Bitmap; {определяем значение ширины BMP2}
BMP2.Height := высоте выделенного в Image.Picture.Bitmap; {определяем значение высоты BMP2}
здесь копируешь выделенную в Image.Picture.Bitmap часть на BMP2
BMP2.SaveToFile(FNstr); {записываем BMP2 на диск}
BMP2.Free; {освобождает память от клона TBitMap}
end;
cult (2003-01-20 17:27:00) [3]дык елы палы, второй параметр - это канва, в которую ты копируешь! :))) вот и указывай там Target :)))
DTK (2003-01-20 16:17:00) [4]дак в том то и дело, что он копирует в эту же канву, там ведь всего 3 параметра, первый- прямоугольник в который будет скопировано, второй - канва, третий- прямоугольник из которого копируют. Получается, что работаем с одной канвой.
Может я конечно дурак, но пару дней уже мучаюсь с этим CopyRect.
Magic (2003-01-20 15:22:00) [5]Наверно ты просто не пробовал. Попробуй CopyRect"нуть в другой битмап или пикчу.