Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 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!



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

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

Наверх




Память: 0.44 MB
Время: 0.006 c
1-99974
tovSuhov
2002-01-14 08:37
2002.01.31
PopupMenu


3-99898
Nemesis
2001-12-28 11:43
2002.01.31
Поднимая вопрос об отчетах ...


3-99856
Dush
2001-12-25 17:17
2002.01.31
QuickReport


14-100041
SP
2001-12-06 15:31
2002.01.31
Может видели ссылку на C++ Builder?


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





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский