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

Вниз

Не получается скопировать изображение и вставить его в др.   Найти похожие ветки 

 
mmms   (2006-06-08 11:43) [0]

Здравствуйте! Вроде бы ничего сложного, но не могу сам разобраться, прошу вашей помощи. Есть файл bmp (64*64) на диске (или уже открытый в TImage, без разницы). Создаю TBitMap (600*400), необходимо скопировать файл bmp на этот битмап.


procedure TForm1.Button1Click(Sender: TObject);
var
Bitmap: TBitmap;
begin
 Bitmap := TBitmap.Create;
 try
   Bitmap.Width := 600;
   Bitmap.Height := 400;
   Bitmap.Canvas.CopyRect(Rect(0, 0, 64, 64), Image1.Picture.Bitmap.Canvas, Bounds(10, 10, 74, 74));
   Bitmap.SaveToFile("c:\new.bmp");
 finally
   Bitmap.Free;
 end;
end;


В результате выполнения кода - картинка на Image1 стирается, а на new.bmp - белый фон. :(


 
tButton ©   (2006-06-08 11:46) [1]

BitBlt(bitmap.Canvas.Handle, Image1.Picture.Bitmap.Canvas.Handle...


 
tButton ©   (2006-06-08 11:47) [2]

суть в том что, насколько я помню, передавать нужно не объект типа tCanvas, а хэндл этого объекта)


 
mmms   (2006-06-08 11:49) [3]

Спасибо, а как тогда вставить в определенную позицию Bitmap(который 600*400)?


 
mmms   (2006-06-08 11:51) [4]

Ага, понял, пробую.


 
mmms   (2006-06-08 11:57) [5]

Нашел вроде, почему первый код не работал, у меня в Image1 была иконка загружена. Пользуюсь советом от tButton. Спасибо!


 
tButton ©   (2006-06-08 11:58) [6]

=)



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

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

Наверх




Память: 0.47 MB
Время: 0.067 c
15-1151231537
@BraIN
2006-06-25 14:32
2006.07.23
Windows Vista Product Key


3-1148130330
wirg
2006-05-20 17:05
2006.07.23
Что быстрее выполняется


2-1151861380
Gloomer
2006-07-02 21:29
2006.07.23
Отображение PNG


15-1150177750
Ega23
2006-06-13 09:49
2006.07.23
С Днём рождения! 10 июня


2-1151994656
PRT
2006-07-04 10:30
2006.07.23
разрешение экрана