Code archives/Graphics/Image color FX
This code has been declared by its author to be Public Domain code.
Download source code
| From Blitz et cetera article Image used: |
;Image color FX by Matt Merkulov Const k# = 180.0 / 255, k2# = 360.0 / 255, fx = 2 Dim col(2) Graphics 640,480,32 i=LoadImage ("image1.jpg") DrawBlock i, 0,0 For y=0 To 479 For x=0 To 639 p = ReadPixel (x, y) For n = 0 To 2 c = p And 255 p = p Shr 8 Select fx Case 1; Negative c = 255 - c Case 2; Darkening c = c Shr 1 Case 3; Lightening c = 128 + (c Sar 1) Case 4; Threshold c = 255 * (c >= 128) Case 5; Saturation reduction c = 64 + (c Sar 1) Case 6; Saturation increase c = c Shl 1 - 128 If c < 0 Then c = 0 If c > 255 Then c = 255 Case 7; Square-law darkening c = 255 - Sqr(255 * 255 - c * c) Case 8; Square-law lightening c = 255 - c c = Sqr(255 * 255 - c * c) Case 9; Colors quantity reduction c = Int(c / 51) * 51 Case 10; Saw c = (c Shr 6) * 4 Case 11; Sawtooth If c And 64 Then c = 255 - (c And 63) * 4 Else c = (c And 63) * 4 Case 12; Hollow c = 255 * (1 - Sin(c * k#)) Case 13; Ledge c = 255 * Sin(c * k#) Case 14; Bend c = Sin(c * k2#) * 127 + c End Select col(n) =c Next WritePixel x, y, col(0) + col(1) Shl 8 + col(2) Shl 16 - 16777216 Next Next WaitKey |