Главная страница
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.51 MB
Время: 0.024 c
2-1179397911
Megabyte
2007-05-17 14:31
2007.06.10
Не ловится класс исключения


2-1179409650
Тимоха
2007-05-17 17:47
2007.06.10
цвет в итеме


2-1179420759
Romm
2007-05-17 20:52
2007.06.10
Курсор в Memo


2-1179588723
Xamil
2007-05-19 19:32
2007.06.10
Плз, подскажите по opengl


1-1176448091
tytus
2007-04-13 11:08
2007.06.10
FastReport 4 - закрасить Memo через один.