Вниз
Скачать: 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.013 c
3-96605
qwerty2
2003-01-13 17:41
2003.01.30
Странное поведение компонента DBGrid


14-96983
polizei
2003-01-13 10:19
2003.01.30
Вопрос


1-96729
Dimitriy.sd
2003-01-22 11:48
2003.01.30
Помогите люди ошибка EInvalidOp, что делать?


3-96594
AM
2003-01-13 14:14
2003.01.30
Что это за exception? Глюк в версии DBE или...


3-96527
oleon
2003-01-13 12:23
2003.01.30
Можно ли написать select из процедуры в MS SQL 2000?




   Наверх