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

Вниз

Как изменить яркость у картинки в TImage?   Найти похожие ветки 

 
ИгорьЕ   (2007-05-15 02:52) [0]

Можно ли её изменть так, чтобы ничего не терялось, и потом при возвращении яркости обратно, картинка бы становилась такой же как и была?


 
Gydvin ©   (2007-05-15 06:53) [1]

Наверное, исходник картинки, хранить в отдельном буфере


 
ИгроЕ   (2007-05-15 07:33) [2]

А где там исходник картинки то?
В TImage можно же разные картинки загрузить. jpg, gif.
Непойму как у них менять яркость. Мне бы примерчик.


 
Gydvin ©   (2007-05-15 08:28) [3]


> jpg, gif

TgifImage, TjpegImage to tbitmap


> Мне бы примерчик.


http://www.google.ru/search?hl=ru&newwindow=1&q=%D0%98%D0%B7%D0%BC%D0%B5%D0%BD%D0%B8%D1%82%D1%8C+%D1%8F%D1%80%D0%BA%D0%BE%D1%81%D1%82%D1%8C+Bitmap+Delphi&btnG=%D0%9F%D0%BE%D0%B8%D1%81%D0%BA&lr=


 
ИгорьЕ   (2007-05-16 03:23) [4]

Делаю:

     JPeg1 := TJPegImage.Create;
     try
       JPeg1.LoadFromStream(aStream);
       anImage.Picture.Bitmap.Assign(JPeg1);
     finally
       JPeg1.Free;
     end;


Картинка грузится. Но после этого anImage.Picture.Bitmap.Width равен нулю.
И как получить из jpeg"а битмэп - непонятно.


 
MegaVolt ©   (2007-05-16 10:49) [5]

Нельзя картинке изменить яркость так чтобы при обратном изменении всё вернулось обратно.
Придётя хранить оригинал отдельно.


 
clickmaker ©   (2007-05-16 10:55) [6]


> Нельзя картинке изменить яркость так чтобы при обратном
> изменении всё вернулось обратно

а если попиксельно приращивать rgb, а потом обратно на ту же дельту?


 
MegaVolt ©   (2007-05-16 12:17) [7]

>а если попиксельно приращивать rgb, а потом обратно на ту же дельту?

Ну был у тебя пиксель 255,255,255 что с ним станет после увеличения яркости?


 
antonn ©   (2007-05-16 12:26) [8]


> Ну был у тебя пиксель 255,255,255 что с ним станет после
> увеличения яркости?

ничего не станет. А вот если был 128,255,255 и увеличение на проценты, то после уменьшения можно обратно его не получить...


 
MegaVolt ©   (2007-05-16 12:30) [9]

>ничего не станет.

Правильно а вот если обратно уменьшить яркость то она уменьшится. Следовательно изначальный пиксель после увеличения и изменения изменится :(


 
antonn ©   (2007-05-16 12:33) [10]

аа, я про тоже говорил:)


 
Gydvin ©   (2007-05-16 14:51) [11]


> ИгорьЕ   (16.05.07 03:23) [4]
>
> Делаю:
>
>      JPeg1 := TJPegImage.Create;
>      try
>        JPeg1.LoadFromStream(aStream);
>        anImage.Picture.Bitmap.Assign(JPeg1);
>      finally
>        JPeg1.Free;
>      end;
>
>
> Картинка грузится. Но после этого anImage.Picture.Bitmap.
> Width равен нулю.
> И как получить из jpeg"а битмэп - непонятно.


А так
//global var
bitmap:tibitmap;

//form.create
bitmap:=tibitmap.create;

//form.close
bitmap.free

//open jpeg

____________________
var
 JPeg1 :TJPegImage;
begin
 JPeg1 := TJPegImage.Create;
    try
      JPeg1.LoadFromfile("MyJpegFile");
      Bitmap.Assign(JPeg1);
    finally
      JPeg1.Free;
    end;

end;
____________________

///Change_brightness
anImage.Picture.canvas:=MyCoolChangeBrightnessFunction(Bitmap,Change_index);


 
Gydvin ©   (2007-05-16 14:52) [12]

очепятка

tibitmap = tbitmap;


 
ИгроЕ   (2007-05-17 03:18) [13]


> JPeg1.LoadFromfile("MyJpegFile");

У меня не LoadFromfile, а LoadFromStream. Из-за чего расширение файла остаётся неизвестным.

И загрузка в TImage идёт отдельно в другом модули. А здесь нужно только из TImage эту картинку достать, осветить, и обратно засунуть.


 
Gydvin ©   (2007-05-17 06:36) [14]


>  Из-за чего расширение файла остаётся неизвестным.


> из TImage эту картинку достать, осветить, и обратно засунуть

Ну, бог в помощь


 
ИгроЕ   (2007-05-19 03:46) [15]


> Gydvin ©   (17.05.07 06:36) [14]
> Ну, бог в помощь

Тебе.

Никто так и не поможет?


 
Anatoly Podgoretsky ©   (2007-05-19 11:36) [16]

Разобраться, что такое яркость, контрастность и понять, что у bmp/gif/jpeg этого нет, надо переводить в другой формат, у которого такие понятия есть.
Умножение RGB на константу не есть яркость.


 
ИгроЕ   (2007-05-20 02:47) [17]


> Anatoly Podgoretsky ©   (19.05.07 11:36) [16]
>
> Разобраться, что такое яркость, контрастность и понять,
> что у bmp/gif/jpeg этого нет, надо переводить в другой формат,
>  у которого такие понятия есть.
> Умножение RGB на константу не есть яркость.


После первого сообщения ещё много чего написано.


 
Германн ©   (2007-05-20 02:57) [18]


> ИгроЕ   (20.05.07 02:47) [17]
>
>
> > Anatoly Podgoretsky ©   (19.05.07 11:36) [16]
> >
> > Разобраться, что такое яркость, контрастность и понять,
>
> > что у bmp/gif/jpeg этого нет, надо переводить в другой
> формат,
> >  у которого такие понятия есть.
> > Умножение RGB на константу не есть яркость.
>
>
> После первого сообщения ещё много чего написано.
>

И что ты из этого "многого" понял?



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

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

Наверх




Память: 0.49 MB
Время: 0.041 c
15-1178957555
Michael5
2007-05-12 12:12
2007.06.10
Посоветуйте перспективный сокет на сегодняшний день?


2-1179659324
ari_9
2007-05-20 15:08
2007.06.10
как из контекста устройства (HDC) получить битмап ?


2-1179801041
ALEX][ANDR
2007-05-22 06:30
2007.06.10
ТАЙМЕР


1-1174323541
_artur
2007-03-19 19:59
2007.06.10
Сохранить TPersistent который часть TComponent


15-1179056867
Просто_новичок
2007-05-13 15:47
2007.06.10
Компонент для работы с COM-портом





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский