Actually, yes, I have read that as well as many other articles on the subject. Unfortunately it has little to do with the price of tea in china . This has only to do with getting the pixel data from an HDC (desktop is just a good starting point, in the end its a remote HDC that will be processed).

But, I did find that (finally) the Lazarus team has surfaced TBitmap.RawImage.Data (YEAH!) and this gives me direct access to the pixel data held within the HDC once I do a BitBlt to the surface. So, alls good now, just access that as though I were accessing Scanline .