Вниз
Скачать: CL | DM;

Работа с рисунками   Найти похожие ветки 

 
DTK   (2003-01-20 15:17) [0]

Мастера! Мне нужно вырезать кусок изображения (кусок Imag-а) и сохранить его в файл.
Может кто-нибудь по-подробнее расскажет о CopyRect, а то я так понял он вырезает кусок рисунка, но этот кусок остается на этой же канве и соответственно отдельно в файл сохранен быть не может.
Заранее спасибо!


 
Magic ©   (2003-01-20 15:22) [1]

Наверно ты просто не пробовал. Попробуй CopyRect"нуть в другой битмап или пикчу.


 
DTK   (2003-01-20 16:17) [2]

дак в том то и дело, что он копирует в эту же канву, там ведь всего 3 параметра, первый- прямоугольник в который будет скопировано, второй - канва, третий- прямоугольник из которого копируют. Получается, что работаем с одной канвой.
Может я конечно дурак, но пару дней уже мучаюсь с этим CopyRect.


 
cult ©   (2003-01-20 17:27) [3]

дык елы палы, второй параметр - это канва, в которую ты копируешь! :))) вот и указывай там Target :)))


 
Kettle of delphi   (2003-01-20 19:15) [4]

Вот, как, примерно, нужно сделать:

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;


 
Magic ©   (2003-01-22 11:03) [5]

BMP2.Width := ширине выделенного в Image.Picture.Bitmap; {определяем значение ширины BMP2}
BMP2.Height := высоте выделенного в Image.Picture.Bitmap; {определяем значение высоты BMP2}

Это нужно обязательно!



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.01 c
1-96811
Андрусь
2003-01-20 13:47
2003.01.30
Кто работал с File Mapping, нужен совет


1-96742
borg
2003-01-22 09:10
2003.01.30
Смещение


6-96929
chum
2002-12-06 11:49
2003.01.30
Работать через несколько прокси серверов


4-97073
FooJar
2002-12-15 09:48
2003.01.30
Синтаксис mailto в Win


3-96588
Шевченко Александр
2003-01-10 17:08
2003.01.30
Как создать локальную таблицу DBF или DB компонентами ADO?




   Наверх