UNPKG

1.86 kBMarkdownView Raw
1# electron-color-picker
2
3[![i:npm]][l:npm]
4[![i:size]][l:size]
5[![i:lint]][l:lint]
6[![i:npm-dev]][l:npm]
7
8Pick color from Desktop, suitable for use with Electron.
9
10[i:npm]: https://img.shields.io/npm/v/electron-color-picker.svg?colorB=blue
11[i:npm-dev]: https://img.shields.io/npm/v/electron-color-picker/dev.svg
12[l:npm]: https://npm.im/electron-color-picker
13[i:size]: https://packagephobia.now.sh/badge?p=electron-color-picker
14[l:size]: https://packagephobia.now.sh/result?p=electron-color-picker
15[i:lint]: https://img.shields.io/badge/code_style-standard_ES6+-yellow.svg
16[l:lint]: https://standardjs.com
17
18#### Note
19
20On Windows & MacOS will use our native color-picker.
21
22On Linux will use [SCROT][l:scrot] to get screenshot and pick color from it.
23The idea is directly borrowed from package [desktop-screenshot][l:desktop-screenshot].
24
25Error will be thrown:
26- when try to start multiple color-picker.
27- on unsupported platform.
28
29#### Example
30
31📁 [example/](example/)
32
33basic implementation of using DOM Button
34to trigger color picking
35and pass result back through ipc
36
37try example with:
38```bash
39cd example
40npm install
41npm start
42```
43
44#### Usage
45
46first add this package to your project:
47```bash
48npm install electron-color-picker
49```
50
51sample function `saveColorToClipboard()`:
52```js
53const { clipboard } = require('electron')
54const { getColorHexRGB } = require('electron-color-picker')
55
56const saveColorToClipboard = async () => {
57 // color may be `#0099ff` or `` (pick cancelled with ESC)
58 const color = await getColorHexRGB().catch((error) => {
59 console.warn(`[ERROR] getColor`, error)
60 return ''
61 })
62
63 console.log(`getColor: ${color}`)
64 color && clipboard.writeText(color)
65}
66```
67
68[l:scrot]: https://en.wikipedia.org/wiki/Scrot
69[l:desktop-screenshot]: https://npm.im/desktop-screenshot
\No newline at end of file