SCREEN _NEWIMAGE(800, 600, 32)image& = _LOADIMAGE("qblogo.png")ConvertImage_Mono image&, _RGB(0, 0, 0)_PUTIMAGE (0, 0), image&SUB ConvertImage_Mono (Image AS LONG, Alpha&)OldSource& = _SOURCE_SOURCE Image_DEST Imagew% = _WIDTH(Image)h% = _HEIGHT(Image)FOR i% = 0 TO w% FOR j% = 0 TO h% m& = POINT(i%, j%) IF m& <> Alpha& THEN clrsum% = (INT((_BLUE(m&) / 100) * 11) + INT((_RED(m&) / 100) * 39) + INT((_GREEN(m&) / 100) * 50)) IF clrsum% > 0 AND clrsum% < 255 THEN PSET (i%, j%), _RGB(clrsum%, clrsum%, clrsum%) END IF END IF NEXTNEXT_SOURCE OldSource&_DEST 0END SUB
REMSCREEN _NEWIMAGE(800, 600, 32)image& = _LOADIMAGE("qblogo.png")effect& = _LOADIMAGE("qblogo.png")ConvertImage_Mono image&, _RGB(0, 0, 0)x% = 0: y% = 0: z% = 50DO _LIMIT 30 _PUTIMAGE (0, 0), image& _PUTIMAGE (x%, y%)-(x% + z%, y% + z%), effect&, 0, (x%, y%)-(x% + z%, y% + z%) _DISPLAY x% = x% + 1: IF x% >= 158 - z% THEN x% = 0 y% = y% + 1: IF y% >= 127 - z% THEN y% = 0LOOP UNTIL _KEYDOWN(27)SLEEPSYSTEMSUB ConvertImage_Mono (Image AS LONG, Alpha&)OldSource& = _SOURCE_SOURCE Image_DEST Imagew% = _WIDTH(Image)h% = _HEIGHT(Image)FOR i% = 0 TO w% FOR j% = 0 TO h% m& = POINT(i%, j%) IF m& <> Alpha& THEN clrsum% = (INT((_BLUE(m&) / 100) * 11) + INT((_RED(m&) / 100) * 39) + INT((_GREEN(m&) / 100) * 50)) IF clrsum% > 0 AND clrsum% < 255 THEN PSET (i%, j%), _RGB(clrsum%, clrsum%, clrsum%) END IF END IF NEXTNEXT_SOURCE OldSource&_DEST 0END SUB