Инверсия всех цветов BitmapDelphi , Графика и Игры , Bitmap
Автор: Fenik { **** UBPFD *********** by delphibase.endimus.com **** >> Зависимости: Graphics Автор: Fenik, chook_nu@uraltc.ru, Новоуральск Copyright: Собственное написание (Николай федоровских) Дата: 1 июня 2002 г. ***************************************************** } procedure InvertBitmap(Bitmap: TBitmap); type TRGB = record B, G, R: Byte; end; pRGB = ^TRGB; var x, y: Integer; Dest: pRGB; begin Bitmap.PixelFormat := pf24Bit; for y := 0 to Bitmap.Height - 1 do begin Dest := Bitmap.ScanLine[y]; for x := 0 to Bitmap.Width - 1 do begin with Dest^ do begin R := 255 - R; G := 255 - G; B := 255 - B; end; Inc(Dest); end; end; end; Программный код на языке Delphi для инвертирования цветов изображения в формате Зависимости: Код использует модуль Автор и авторские права: Автор - Феник (Николай Федоровский), авторские права принадлежат ему. Дата написания: Код был написан 1 июня 2002 года. Процедура InvertBitmap: Эта процедура принимает объект
Примечание: Код предполагает, что битмап находится в формате 24-бит true color, то есть имеет три байта на пиксел: один для красного, один для зелёного и один для синего. Если ваш битмап находится в другом формате (например, индексированном или сжатом), этот код может не работать как ожидалось. В целом, это простой но эффективный способ инвертирования цветов изображения в Delphi. В статье описывается процедура InvertBitmap, которая инвертирует цвета в Bitmap-образе, меняя красный, зелёный и синий компоненты на их отрицательные значения. Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |