Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Мультимедиа в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.05.2009, 21:42   #21
Neeter
Форумчанин
 
Аватар для Neeter
 
Регистрация: 22.02.2009
Сообщений: 875
По умолчанию

Ну вот примерчик
Создай процедуру:
Код:
procedure Highlight(aSource, ATarget: TBitmap);
var
 i, j: Integer;
 s, t: pRGBTriple;
begin
 aSource.PixelFormat := pf24bit;
 ATarget.PixelFormat := pf24bit;
 ATarget.Width := aSource.Width;
 ATarget.Height := aSource.Height;
 for i := 0 to aSource.Height - 1 do
 begin
  s := ASource.Scanline[i];
  t := ATarget.Scanline[i];
  for j := 0 to aSource.Width - 1 do
   begin
    if (t^.rgbtBlue = ColorToRGB(clBlack)) and
      (t^.rgbtRed = ColorToRGB(clBlack)) and
      (t^.rgbtBlue = ColorToRGB(clBlack)) then
      begin
       t^.rgbtBlue := ColorToRGB(clWhite);
       t^.rgbtGreen := ColorToRGB(clWhite);
       t^.rgbtRed := ColorToRGB(clWhite);
      end;
    inc(s);
    inc(t);
   end;
  end;
end;
И например при нажатии кнопку:
Код:
procedure TForm1.BitBtn2Click(Sender: TObject);
var
 Bitmap: TBitmap;
begin
 Bitmap:=Image1.Picture.Bitmap;
 Bitmap.PixelFormat := pf24Bit;
 Highlight(Bitmap,Bitmap);
 Image1.Refresh;
end;
Все черные пикселы меняет на белые
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство.

Последний раз редактировалось Neeter; 14.05.2009 в 22:12.
Neeter вне форума Ответить с цитированием
Старый 14.05.2009, 21:44   #22
beemoto
Форумчанин
 
Аватар для beemoto
 
Регистрация: 11.04.2009
Сообщений: 277
По умолчанию

o_0 спс за примерчик(ток процедура большая =D)
===========
плиз помогите в теме:
http://programmersforum.ru/showthread.php?p=262987 !!!
beemoto вне форума Ответить с цитированием
Старый 14.05.2009, 21:44   #23
Neeter
Форумчанин
 
Аватар для Neeter
 
Регистрация: 22.02.2009
Сообщений: 875
По умолчанию

Ну там в основном присваивания всякие
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство.
Neeter вне форума Ответить с цитированием
Старый 15.05.2009, 01:16   #24
DomiNick
Студент, не
Старожил
 
Аватар для DomiNick
 
Регистрация: 29.01.2009
Сообщений: 2,067
По умолчанию

Цитата:
я немогу понять куда быстрей!? он неподвисает сразу выдает!
Ну если у Вас картинка 200х200, то может быть и не заметно...
А если 1024х1024, то будет ещё как виснуть...
I am the First of Cyber Evolution...
I am the First to Program your Future...
DomiNick вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как загрузить Windows-приложение без Windows alexray Компоненты Delphi 4 30.04.2010 14:38
Как получить JPEG GET-запросом по адресу eldar Работа с сетью в Delphi 4 16.03.2009 21:04
Image, загрузка JPEG Terran Мультимедиа в Delphi 4 19.12.2007 20:08
Как построить Bitmap для jpeg файла ??? Kocapb Общие вопросы C/C++ 4 14.12.2007 19:50
Как загрузить GIF анимацию в Image Ramz Помощь студентам 1 27.04.2007 15:18