Skip to content

Latest commit

 

History

History
49 lines (37 loc) · 2.28 KB

File metadata and controls

49 lines (37 loc) · 2.28 KB

Color Picker

Public overview - Microsoft Learn

Quick Links

All Issues
Bugs
Pull Requests

Overview

Color Picker is a system-wide color picking utility for Windows that allows users to pick colors from any screen and copy them to the clipboard in a configurable format.

Implementation Details

Color Capturing Mechanism

The Color Picker works by following these steps to capture the color at the current mouse position:

  1. Obtain the position of the mouse
  2. Create a 1x1 size rectangle at that position
  3. Create a Bitmap class and use it to initiate a Graphics object
  4. Create an image associated with the Graphics object by leveraging the CopyFromScreen function, which captures the pixel information from the specified location

Core Color Picking Function

The following code snippet demonstrates the core functionality of how a color is picked from the screen:

private static Color GetPixelColor(System.Windows.Point mousePosition)
{
    var rect = new Rectangle((int)mousePosition.X, (int)mousePosition.Y, 1, 1);
    using (var bmp = new Bitmap(rect.Width, rect.Height, PixelFormat.Format32bppArgb))
    {
        var g = Graphics.FromImage(bmp);
        g.CopyFromScreen(rect.Left, rect.Top, 0, 0, bmp.Size, CopyPixelOperation.SourceCopy);

        return bmp.GetPixel(0, 0);
    }
}

Features

  • Pick colors from any pixel on the screen
  • View color information in various formats (RGB, HEX, HSL, etc.)
  • Copy color values to clipboard in configurable formats
  • Color history for quick access to previously selected colors
  • Keyboard shortcuts for quick activation and operation

User Experience

When activated, Color Picker displays a magnified view of the area around the cursor to allow for precise color selection. Once a color is selected, it can be copied to the clipboard in the user's preferred format for use in design tools, development environments, or other applications.