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

Вниз

Проблемы с картинками   Найти похожие ветки 

 
Анатолий   (2002-01-14 22:57) [0]

Вот код:
image2.picture.bitmap.Assign(image1.picture.graphic);
image2.Picture.Bitmap.Canvas.Pixels[x,y];
for i:=0 to image2.Picture.Bitmap.Width-1 do begin
for j:=0 to image2.Picture.Bitmap.Height-1 do begin

Допустим в image2 грузим файл размером 160*160, однако размер самого компонента image2 например 40*40 (при этом stretch:=true). Однако цикл будет работать с картинкой размер которой равен 160*160. Однако мне нужно, чтобы цикл анализировал "сплющенную" картинку размером 40*40 (т.е работать с картинкой, котороую я вижу в Image2, а не с той размер которой 160*160). Как такое сделать. Заранее спасибо!
Да, последний вопрос! В данном случае цикл работает с каждым пикселем, а как бы сделать так, чтобы цикл работал через один пиксель.


 
Almaz ©   (2002-01-15 00:28) [1]

>Анатолий
В данном случае нужно использовать промежуточный Bitmap на который спроецировать "сплющенную" картинку, и с ним далее и работать:

var
Temp: TBitmap;
...
image2.picture.bitmap.Assign(image1.picture.graphic);
Temp := TBitmap.Create;
Temp.Width := Image2.Width; // Размеры сжатой картинки - 40
Temp.Height := Image2.Height; // Размеры сжатой картинки - 40
Temp.Canvas.StretchDraw(Rect(0, 0, Temp.Width, Temp.Height), Image2.Picture.Bitmap); // Уменьшаем картинку до 40х40
// Теперь работаем с Temp - который имеет размеры 40х40
for i:=0 to Temp.Width - 1 do begin
for j:=0 to Temp.Height - 1 do begin
...
Temp.Free;


Удачи.


 
Анатолий   (2002-01-15 03:57) [2]

Большое спасибо Almaz!



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

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

Наверх




Память: 0.47 MB
Время: 0.009 c
1-99980
Georg
2002-01-14 15:22
2002.01.31
Номер недели


1-99969
DDDeN
2001-12-31 13:21
2002.01.31
Русификаторы приложений


1-99928
MARcoDEN
2002-01-09 20:53
2002.01.31
Delphi 6


3-99839
Alex Y
2001-12-26 08:11
2002.01.31
MDAC


1-99982
roman001
2002-01-11 19:35
2002.01.31
Эмуляция нажатия клавы