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

Вниз

Как скопировать часть рисунка   Найти похожие ветки 

 
bulanov   (2004-09-07 22:52) [0]

Вопрос в следующем.
Мне необходимо часть рисунка нахлдящегося в image1 скопировать в image2.

Делаю так:

 Bitmap := TBitmap.Create;
 try
   Bitmap.Width := 50;
   Bitmap.Height := 40;
   Bitmap.Canvas.CopyRect(Rect(0, 0, 50, 40),
     Image1.Picture.Bitmap.Canvas,
     Bounds(10, 10, 60, 50));
   Image2.Picture.Bitmap:=Bitmap;
 finally
   Bitmap.Free;
 end;


Все это работает, но только если image1 содержит bmp, а у меня он содержит jpg, и копируется белый квадратик.

Подскажите что можно предпринять.
Спасибо.


 
Defunct ©   (2004-09-07 23:15) [1]

Image1.Picture.Graphic.Canvas


 
wl   (2004-09-07 23:19) [2]

эээ а разве у TGraphic есть свойство Canvas?


 
Defunct ©   (2004-09-07 23:23) [3]

Опечатка.


 
bulanov   (2004-09-07 23:34) [4]

в copyrect требуется TCanvas а не TGraphic
ошибку выдает при компилировании.


 
wl   (2004-09-07 23:40) [5]

а что обязательно jpg использовать?
кроме того, по моему опыту, компонент TImage содержит в себе кучу глюков, лучше его не использовать


 
bulanov   (2004-09-07 23:41) [6]

а что использовать?


 
antonn ©   (2004-09-08 06:56) [7]

а у picture канвас есть? image1.picture.canvas


 
antonn ©   (2004-09-08 07:16) [8]

procedure TForm1.Button1Click(Sender: TObject);
var b:tbitmap;
begin

b:=Tbitmap.Create;
b.Width:=100;
b.Height:=100;
b.Canvas.Draw( 0,0,image1.Picture.Graphic );
image2.Canvas.CopyRect( rect(0,0,100,100), b.Canvas ,rect(0,0,100,100) );
b.Free;

//Вроде работает. Лишнее убери и усе Ок.
end;



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

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

Наверх




Память: 0.46 MB
Время: 0.042 c
3-1100178213
Мирон
2004-11-11 16:03
2004.12.12
Как в триггере BeforeInsert корректно отменить вставку строки


14-1100855016
Ilya___
2004-11-19 12:03
2004.12.12
Подскажите пожалуйста. правильно ли я делаю?


1-1101455243
msm
2004-11-26 10:47
2004.12.12
Запись текста в файл


4-1098938185
carmen
2004-10-28 08:36
2004.12.12
Как изменить значение TEdit в чужой программе и нажать кнопку в


14-1100806544
gn
2004-11-18 22:35
2004.12.12
M$ признала часть вины в распространении вирусов





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский