カーソル位置の色を取得するAutoHotkeyスクリプト

Microsoftの新デザインのオレンジのカラーコードは?。

カラーピッカーとか起動したくないし、常駐なんてもってのほか! みたいな人なので、Win+Cでカーソル位置の色を取得してツールチップで表示とクリップボードへのコピーを行う簡単なAutoHotkeyスクリプトを書いて愛用している。

; Win+C: Get Cursor Position Color
#c::
  MouseGetPos, MouseX, MouseY

  PixelGetColor, color, %MouseX%, %MouseY%, Slow

  StringMid, red,   color, 7, 2
  StringMid, green, color, 5, 2
  StringMid, blue,  color, 3, 2

  red   := "0x" . red
  green := "0x" . green
  blue  := "0x" . blue

  SetFormat, IntegerFast, Decimal
  red   += 0
  green += 0
  blue  += 0

  ToolTip, rgb(%red%`, %green%`, %blue%)

  Clipboard = rgb(%red%, %green%, %blue%)

  return

コピーされる色情報はrgb()にしたかったのでちょっと面倒な感じになってる。0xFFとかのHexをSetFormat, IntegerFast, Decimalしてから演算すると整数にできるのでそれを使った。RGBで良いならPixelGetColorの最後にRGBを付けて色の順序をひっくり返し、返ってきた値の先頭から0xを削って#を付けるだけで良い。

Windowsにプリインストールされているソフトウェアの中でエクスプローラーに次いでよく使っている拡大鏡が起動している時にカーソル位置がずれるのでうまく動かないのをなんとかしたいなーとか思ってはや数年。