Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Проблема с CopyRect


Hatawa ©   (2003-07-25 09:53:00) 

Уважаемые мастера, подскажите пожалуйста, почему может такое происходить - после выполнения нижеследующего кода в файл NewFilename сохраняется белый прямоугольник?

Если попробовать сделать то же самое в примере из Graphics32 - всё работает.



var WidthRatio : real;
HeightRatio : real;
Factor : extended;
FuckImage : TImage32;
Image ( self)

Уважаемые мастера, подскажите пожалуйста, почему может такое происходить - после выполнения нижеследующего кода в файл NewFilename сохраняется белый прямоугольник?

Если попробовать сделать то же самое в примере из Graphics32 - всё работает.



var WidthRatio : real;
HeightRatio : real;
Factor : extended;
FuckImage : TImage32;
Image : TImage;

begin

FuckImage:=Timage32.Create(self);
FuckImage.Visible:=false;
FuckImage.Parent:=self;
FuckImage.Bitmap.LoadFromFile(nFile);

WidthRatio := FuckImage.Bitmap.Width / ClientWidth;
HeightRatio := FuckImage.Bitmap.Height / ClientHeight;

Factor := Max(WidthRatio, HeightRatio)*1.1;

if (Factor < 1) then Factor := 1;

FuckImage.Width:=trunc(FuckImage.Bitmap.Width/factor);
FuckImage.Height:=trunc(FuckImage.Bitmap.Height/factor);

FuckImage.ScaleMode:=smScale;

FuckImage.Scale:=1/Factor;

FuckImage.Visible:=true;

Image:=TImage.Create(self);
Image.Parent:=self;
Image.Visible:=false;
Image.Width:=FuckImage.Width;
Image.Height:=FuckImage.Height;

image.Canvas.CopyMode:=srcCopy;
image.Canvas.CopyRect(FuckImage.Canvas.ClipRect,fuckimage.Canvas,FuckImage.Canvas.ClipRect);
Image.Picture.SaveToFile(NewFilename);


AlexT1000   (2003-07-25 15:52:00) [1]

FuckImage ( FuckImage.Canvas{!!!!}.ClipRect,fuckimage.Canvas{!!!!},FuckImage.Canvas.ClipRect)

FuckImage : TImage32;
image.Canvas.CopyRect(FuckImage.Canvas{!!!!}.ClipRect,fuckimage.Canvas{!!!!},FuckImage.Canvas.ClipRect);
Что то я не помню у TImage32 свойства Canvas, а заодно и ClipRect!


Наверх

Титульная страница Поиск, карта сайта Написать письмо