#SingleInstance, Force SetBatchLines -1 PixelData= ( LTrim Join| 000000|000000|000000|000000|000000|000000|000000|000000|000000|000000|000000|000000|000000|000000 000000|000000|000000|000000|FF0305|FF0305|FF0305|FF0305|FF0305|000000|000000|000000|000000|000000 000000|000000|000000|FF0305|FF0305|FF0305|FF0305|FF0305|FF0305|FF0305|FF0305|FF0305|000000|000000 000000|000000|000000|612210|612210|612210|E9A24A|E9A24A|000000|E9A24A|000000|000000|000000|000000 000000|000000|612210|E9A24A|612210|E9A24A|E9A24A|E9A24A|000000|E9A24A|E9A24A|E9A24A|000000|000000 000000|000000|612210|E9A24A|612210|612210|E9A24A|E9A24A|E9A24A|612210|E9A24A|E9A24A|E9A24A|000000 000000|000000|612210|612210|E9A24A|E9A24A|E9A24A|E9A24A|612210|612210|612210|612210|000000|000000 000000|000000|000000|000000|E9A24A|E9A24A|E9A24A|E9A24A|E9A24A|E9A24A|E9A24A|000000|000000|000000 000000|000000|000000|FF0305|FF0305|10447E|FF0305|FF0305|FF0305|000000|000000|000000|000000|000000 000000|000000|FF0305|FF0305|FF0305|10447E|FF0305|FF0305|10447E|FF0305|FF0305|FF0305|000000|000000 000000|FF0305|FF0305|FF0305|FF0305|10447E|10447E|10447E|10447E|FF0305|FF0305|FF0305|FF0305|000000 000000|E9A24A|E9A24A|FF0305|10447E|F7FD17|10447E|10447E|F7FD17|10447E|FF0305|E9A24A|E9A24A|000000 000000|E9A24A|E9A24A|EA9D48|10447E|17497B|10447E|10447E|17497B|10447E|EA9D48|E9A24A|E9A24A|000000 000000|E9A24A|E9A24A|E6A14B|10447E|10447E|10447E|10447E|10447E|10447E|E6A14B|E9A24A|E9A24A|000000 000000|E9A24A|E9A24A|10447E|10447E|10447E|10447E|10447E|10447E|10447E|10447E|E9A24A|E9A24A|000000 000000|000000|000000|10447E|10447E|10447E|000000|000000|10447E|10447E|10447E|000000|000000|000000 000000|000000|612210|612210|612210|000000|000000|000000|000000|612210|612210|612210|000000|000000 000000|000000|000000|000000|000000|000000|000000|000000|000000|000000|000000|000000|000000|000000 ) hBM := CreateDIB( PixelData, 14, 18 ) Gui, Margin, 0, 0 Gui, Add, Picture, w480 h636 0x4E hwndcHwnd ; SS_REALSIZECONTROL = 0x40 | SS_BITMAP = 0xE DllCall( "SendMessage", UInt,cHwnd, UInt,0x172, UInt,0, UInt,hBM ) ; STM_SETIMAGE = 0x172 Gui, Show,, CreateDIB() Demo - Mario_Pixeles_by_Link_LeoB.png Return GuiClose: ExitApp CreateDIB( PixelData, W, H, ResizeW=0, ResizeH=0, Gradient=1 ) { ; SKAN, 01-Apr-2014 WB := Ceil( ( W * 3 )/ 2 ) * 2, VarSetCapacity( BMBITS, WB * H + 1, 0 ), P := &BMBITS Loop, Parse, PixelData, | P := Numput( "0x" A_LoopField, P+0 ) - ( W & 1 && !Mod( A_Index * 3, W * 3 ) ? 0 : 1 ) hBM := DllCall( "CreateBitmap", Int,W, Int,H, UInt,1, UInt,24, UInt,0 ) hBM := DllCall( "CopyImage", UInt,hBM, Int,0, Int,0, Int,0, UInt,0x2008 ) DllCall( "SetBitmapBits", UInt,hBM, UInt,WB * H, UInt,&BMBITS ) hBM := ! Gradient ? DllCall( "CopyImage", UInt,hBM, UInt,0, Int,0, Int,0, Int,8 ) : hBM Return DllCall( "CopyImage", UInt,hBM, Int,0, Int,ResizeW, Int,ResizeH, Int,0x200C, UInt ) } ; http://ahkscript.org/boards/viewtopic.php?t=3203