Форум: "Основная";
Поиск по всему сайту: 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.029 c
14-100049         Игорь                 2001-12-02 19:29  2002.01.31  
Вопрос почти про графику


14-100046         Vadim                 2001-12-10 10:14  2002.01.31  
http://www.sources.ru/news/20011203.shtml


4-100112          Tippy                 2001-11-29 20:44  2002.01.31  
Как в Трей добавить текст?


7-100092          DOMINATOR             2001-09-27 05:53  2002.01.31  
Братья ПРОГРАМЕРЫ помогите кто может!!!!!!


14-100042         VEG                   2001-12-07 19:53  2002.01.31  
Скоро Новый Год: Пора делать предновогодние версии своих программ...