Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.12.03;
Скачать: CL | DM;

Вниз

Копирование на Image2   Найти похожие ветки 

 
mobila   (2006-04-18 17:18) [0]

Подскажите пожалуйста как вывести изображение на Image2 при копировании
Image2.Canvas.CopyRect(ImageRect, Image1.Canvas, ImageRect,);
чтоб изображение было в определённом месте на Image2.


 
MBo ©   (2006-04-18 17:20) [1]

ImageRect разные сделать - логично?


 
mobila   (2006-04-18 19:18) [2]

Что то не понял


 
Crazy_Diman ©   (2006-04-19 01:08) [3]

Если я правельно понел вопрос то так
Image2.Picture.Bitmap.PixelFormat:=pf24bit;
Image2.Picture.Bitmap.Width:=Image1.Picture.Bitmap.Width;
Image2.Picture.Bitmap.Height:=Image1.Picture.Bitmap.Height;
Image2.Canvas.CopyRect(Image2.Picture.Bitmap.Canvas.ClipRect, Image1.Canvas, Image1.Picture.Bitmap.Canvas.ClipRect);


 
mobila   (2006-04-19 18:35) [4]

Объесню по понятнее я сделал прямоугольник как в фотошопе т.е.
гружу фото в Image1 потом перетаскиваю этот прямоугольник на нужное мне место на фотографии и жму кнопку копировать (к кнопке копировать привязал функцию
Image2.Canvas.CopyRect(ImageRect, Image1.Canvas, ImageRect); т.е.
при нажатии на кнопку часть рисунка выделенная этим прямоугольником копируется на Image2, вся проблемма в том что часть рисунка копируется на Image2 в то место откуда она была выделена на Image1, а мне нужно что бы рисунок копировался строго в нижний левый угол или в др. углы. Помогите кто может.


 
Pojarnik   (2006-04-21 00:14) [5]

Есть функция в заголовочном файле windows.pas

BitBlt(КудаКопировать.Canvas.Handle, КудаLeft, КудаTop, КудаWidth, Куда Height, ЧтоКопировать.Canvas.Handle ,  ЧтоLeft, ЧтоTop, SrcCopy);


 
mobila   (2006-04-21 14:36) [6]

Спасибо вот что получилось
BitBlt(Image2.Canvas.Handle, 0, 0, 90, 90, Image1.Canvas.Handle ,ImageRect.Left, ImageRect.Top, SrcCopy);

А ещё этого эффекта можно добится прописав вот это

Image2.Canvas.CopyRect (Rect (0, 0, 90, 90),Image1.Canvas,
ImageRect)

ну вот теперь всё копируется куда надо только теперь вокруг скопированного изображения появляется рамка того самого прямоугольника, которым скопировал это изображение. Как эту рамку можно убрать?
Она появляется из за ImageRect. А Image2.Canvas.DrawFocusRect(ImageRect); не помогает.



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

Текущий архив: 2006.12.03;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.052 c
2-1163602889
Новый_Юзер
2006-11-15 18:01
2006.12.03
Панель инструментов и кнопки с картинками из ImageList a


15-1163497281
s_t_d
2006-11-14 12:41
2006.12.03
Проблема с платой Intel D-945 PLRN


15-1163180682
ArtemESC
2006-11-10 20:44
2006.12.03
С, что ему тут не нравится?


3-1159279225
Itonix
2006-09-26 18:00
2006.12.03
Динамический запрос


2-1163700111
Ingwar
2006-11-16 21:01
2006.12.03
Как прервать цикл ожидания посылки (ComPort 3.1 от WinSoft a)