I’m working on finishing up the code for the next release of ColorPicker.NET. The main focus of this release is on incorporating the screen pixel sampling functionality that so many people have requested. While working on the design, I decided that I wanted the user to do all of the color sampling from within the tool. This means that instead of being able to extend the cursor outside of the tool’s boundaries to sample colors, you need to select the desired screen area using the available functionality and do all of the zooming and sampling inside the tool. The result can be seen in the following screenshot.
The screen capture panel on the left side represents the area of the desktop that the user has selected. You can capture your preferred area by scrolling using the hot spots on the edges of the panel or by holding down the control key, clicking on the screen capture panel and dragging the translucent rectangle around the screen. As you drag, the area under the location of this rectangle will be displayed in the screen capture panel.
Once you have captured the desired screen area, you will need to make a more specific selection. Do this by clicking inside the screen capture panel. This will activate what I call a zoom rectangle. This defaults to a zoom power of 1x. If you would like to zoom in further, select the desired zoom power from the magnifier control. Once you have zoomed in on the captured image, you can sample colors by clicking (and moving) within the bounds of the zoomed image panel on the upper right side of the control.
As I mentioned earlier, I’m still working on finishing up, but I’d like some constructive criticism on the current implementation. Download the binaries and let me know what you think!