Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Media";
Текущий архив: 2006.12.03;
Скачать: [xml.tar.bz2];

Вниз

Копирование на 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 вся ветка

Форум: "Media";
Текущий архив: 2006.12.03;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.048 c
2-1163402344
vegarulez
2006-11-13 10:19
2006.12.03
Как отключить меню "пуск" в винде...


2-1163490915
TrainerOfDolphins
2006-11-14 10:55
2006.12.03
Клик с нажатой Ctrl на гриде


2-1163690295
Svoja4ok
2006-11-16 18:18
2006.12.03
Просто в XLS... сбился с ног...


2-1163346433
Stan
2006-11-12 18:47
2006.12.03
Published свойство


4-1153388040
Nikos2006
2006-07-20 13:34
2006.12.03
замена рабочего стола





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский