Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Графика и игры
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
  #6  
Старый 19.03.2012, 22:49
Аватар для angvelem
angvelem angvelem вне форума
.
 
Регистрация: 18.05.2011
Адрес: Омск
Сообщения: 3,970
Версия Delphi: 3,5,7,10,12,XE2
Репутация: выкл
По умолчанию

На форме лежит Image1 на нём Image2. В Image1 картинка уже загружена:
Код:
procedure TForm1.FormCreate(Sender: TObject);
var
  aRect : TRect;
  bmp : TBitmap;
begin
  bmp := TBitmap.Create;
  try
    SetRect(aRect, Image2.Left - Image1.Left, Image2.Top - Image1.Top, Image2.Left + Image2.Width - Image1.Left, Image2.Top + Image2.Height - Image1.Top);
    bmp.Width  := Image1.Width;
    bmp.Height := Image1.Height;
    bmp.Canvas.StretchDraw(bmp.Canvas.ClipRect, Image1.Picture.Graphic);
    Image2.Canvas.CopyRect(Image2.Canvas.ClipRect, bmp.Canvas, aRect);
  finally
    bmp.Free;
  end;
end;

Цитата:
нашел решение

Цитата:
BitBlt(dest.Canvas.Handle, 0, 0, dest.Width,
dest.Height, src.Canvas.Handle,
dest.Left, dest.Top, SRCCOPY);
Это несколько не то. С изображениями отличными от битмап (jpg к примеру) работать не будет.
__________________
Je venus de nulle part
55.026263 с.ш., 73.397636 в.д.

Последний раз редактировалось angvelem, 19.03.2012 в 22:53.
Ответить с цитированием
 


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 15:54.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025