Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.01.31;
Скачать: [xml.tar.bz2];




Вниз

Проблемы с картинками 


Анатолий   (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!




Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.01.31;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.026 c
1-99958           Romul                 2002-01-12 14:28  2002.01.31  
Как удерживать бегунок у ScrollBar внизу?


4-100103          neodiX                2001-11-29 15:30  2002.01.31  
Kak programno, na vremia, otkliucit mysh i klavu v WinNT ili Win2k? Ocen nado..


4-100111          alex16                2001-12-04 07:35  2002.01.31  
exe file


7-100072          Liroy                 2001-10-19 21:26  2002.01.31  
Hook, клавиатурный шпион


1-99954           Yuraz                 2002-01-13 19:03  2002.01.31  
Помогите! Не могу разобраться, почему в этой проц. печатается менее 6 букв