imgCanvas.BeforeDraw logfx = This.oGfx With _Screen.System.Drawing loColorMap = .Imaging.ColorMap.New() loAttr = .Imaging.ImageAttributes.New() loBmp = .Bitmap.FromFile(This.Picture) loRect = loBmp.GetBounds() * the old colour - RGB colour loColorMap.OldColor = .Color.FromRGB(255,198,173) * the colour to change to loColorMap.NewColor = .Color.FromRGB(255,255,0) * change the colours loAttr.SetRemapTable(loColorMap) * Draw on the canvas with the new image logfx.DrawImage(loBmp, loRect, loRect, .GraphicsUnit.Pixel, loAttr) * save the changed image as BMP for later use loBmp.Save("converted.bmp", .Imaging.ImageFormat.Bmp) Endwith