2013-09-09 15:35:57 +08:00
|
|
|
# clipboard
|
2013-08-14 15:43:35 -07:00
|
|
|
|
2016-04-21 15:39:12 -07:00
|
|
|
> Perform copy and paste operations on the system clipboard.
|
2016-04-21 15:35:29 -07:00
|
|
|
|
2016-11-23 11:20:56 -08:00
|
|
|
Process: [Main](../glossary.md#main-process), [Renderer](../glossary.md#renderer-process)
|
2016-11-01 16:35:31 -07:00
|
|
|
|
2015-08-25 05:16:20 -07:00
|
|
|
The following example shows how to write a string to the clipboard:
|
2013-08-14 15:43:35 -07:00
|
|
|
|
|
|
|
```javascript
|
2016-07-25 18:39:25 -07:00
|
|
|
const {clipboard} = require('electron')
|
|
|
|
clipboard.writeText('Example String')
|
2013-08-14 15:43:35 -07:00
|
|
|
```
|
|
|
|
|
2015-07-23 18:01:00 +01:00
|
|
|
On X Window systems, there is also a selection clipboard. To manipulate it
|
2014-06-05 14:48:12 +08:00
|
|
|
you need to pass `selection` to each method:
|
|
|
|
|
|
|
|
```javascript
|
2016-07-25 18:39:25 -07:00
|
|
|
const {clipboard} = require('electron')
|
|
|
|
clipboard.writeText('Example String', 'selection')
|
|
|
|
console.log(clipboard.readText('selection'))
|
2014-06-05 14:48:12 +08:00
|
|
|
```
|
|
|
|
|
2015-08-24 14:35:43 -07:00
|
|
|
## Methods
|
2014-06-05 14:48:12 +08:00
|
|
|
|
2015-08-26 16:28:44 -07:00
|
|
|
The `clipboard` module has the following methods:
|
2015-08-24 14:35:43 -07:00
|
|
|
|
2015-08-28 10:34:48 -07:00
|
|
|
**Note:** Experimental APIs are marked as such and could be removed in future.
|
|
|
|
|
2015-08-24 14:35:43 -07:00
|
|
|
### `clipboard.readText([type])`
|
|
|
|
|
|
|
|
* `type` String (optional)
|
2013-08-14 15:43:35 -07:00
|
|
|
|
2016-09-25 12:59:30 +13:00
|
|
|
Returns `String` - The content in the clipboard as plain text.
|
2013-08-14 15:43:35 -07:00
|
|
|
|
2015-08-24 14:35:43 -07:00
|
|
|
### `clipboard.writeText(text[, type])`
|
2013-08-14 15:43:35 -07:00
|
|
|
|
|
|
|
* `text` String
|
2015-08-24 14:35:43 -07:00
|
|
|
* `type` String (optional)
|
2013-08-14 15:43:35 -07:00
|
|
|
|
2015-07-23 18:01:00 +01:00
|
|
|
Writes the `text` into the clipboard as plain text.
|
2013-08-14 15:43:35 -07:00
|
|
|
|
2016-05-26 14:26:12 -07:00
|
|
|
### `clipboard.readHTML([type])`
|
2015-05-22 14:59:11 +05:30
|
|
|
|
2015-08-24 14:35:43 -07:00
|
|
|
* `type` String (optional)
|
2015-05-22 14:59:11 +05:30
|
|
|
|
2016-09-25 12:59:30 +13:00
|
|
|
Returns `String` - The content in the clipboard as markup.
|
2015-05-22 14:59:11 +05:30
|
|
|
|
2016-05-26 14:26:12 -07:00
|
|
|
### `clipboard.writeHTML(markup[, type])`
|
2015-05-22 14:59:11 +05:30
|
|
|
|
|
|
|
* `markup` String
|
2015-08-24 14:35:43 -07:00
|
|
|
* `type` String (optional)
|
2015-05-22 14:59:11 +05:30
|
|
|
|
2015-08-24 14:35:43 -07:00
|
|
|
Writes `markup` to the clipboard.
|
2015-05-22 14:59:11 +05:30
|
|
|
|
2015-08-24 14:35:43 -07:00
|
|
|
### `clipboard.readImage([type])`
|
2015-03-26 12:53:48 +08:00
|
|
|
|
2015-08-24 14:35:43 -07:00
|
|
|
* `type` String (optional)
|
2015-03-26 12:53:48 +08:00
|
|
|
|
2016-12-19 09:40:07 -08:00
|
|
|
Returns [`NativeImage`](native-image.md) - The image content in the clipboard.
|
2015-03-26 12:53:48 +08:00
|
|
|
|
2015-08-24 14:35:43 -07:00
|
|
|
### `clipboard.writeImage(image[, type])`
|
2015-03-26 12:53:48 +08:00
|
|
|
|
|
|
|
* `image` [NativeImage](native-image.md)
|
2015-08-24 14:35:43 -07:00
|
|
|
* `type` String (optional)
|
|
|
|
|
|
|
|
Writes `image` to the clipboard.
|
2015-03-26 12:53:48 +08:00
|
|
|
|
2016-05-26 14:26:12 -07:00
|
|
|
### `clipboard.readRTF([type])`
|
2016-02-05 09:06:21 +01:00
|
|
|
|
|
|
|
* `type` String (optional)
|
|
|
|
|
2016-09-25 12:59:30 +13:00
|
|
|
Returns `String` - The content in the clipboard as RTF.
|
2016-02-05 09:06:21 +01:00
|
|
|
|
2016-05-26 14:26:12 -07:00
|
|
|
### `clipboard.writeRTF(text[, type])`
|
2016-02-04 19:38:47 +01:00
|
|
|
|
|
|
|
* `text` String
|
2016-02-05 09:06:21 +01:00
|
|
|
* `type` String (optional)
|
2016-02-04 19:38:47 +01:00
|
|
|
|
|
|
|
Writes the `text` into the clipboard in RTF.
|
|
|
|
|
2016-06-24 17:16:38 -07:00
|
|
|
### `clipboard.readBookmark()` _macOS_ _Windows_
|
2016-06-24 15:20:49 -07:00
|
|
|
|
2016-09-25 12:59:30 +13:00
|
|
|
Returns `Object`:
|
2016-10-25 12:35:18 +09:00
|
|
|
|
2016-09-25 12:59:30 +13:00
|
|
|
* `title` String
|
|
|
|
* `url` String
|
|
|
|
|
2016-06-24 15:35:30 -07:00
|
|
|
Returns an Object containing `title` and `url` keys representing the bookmark in
|
|
|
|
the clipboard. The `title` and `url` values will be empty strings when the
|
|
|
|
bookmark is unavailable.
|
2016-06-24 15:20:49 -07:00
|
|
|
|
2016-06-24 17:16:38 -07:00
|
|
|
### `clipboard.writeBookmark(title, url[, type])` _macOS_ _Windows_
|
2016-06-24 15:20:49 -07:00
|
|
|
|
|
|
|
* `title` String
|
|
|
|
* `url` String
|
|
|
|
* `type` String (optional)
|
|
|
|
|
|
|
|
Writes the `title` and `url` into the clipboard as a bookmark.
|
|
|
|
|
2016-09-21 10:28:37 -07:00
|
|
|
**Note:** Most apps on Windows don't support pasting bookmarks into them so
|
|
|
|
you can use `clipboard.write` to write both a bookmark and fallback text to the
|
|
|
|
clipboard.
|
|
|
|
|
|
|
|
```js
|
|
|
|
clipboard.write({
|
|
|
|
text: 'http://electron.atom.io',
|
|
|
|
bookmark: 'Electron Homepage'
|
|
|
|
})
|
|
|
|
```
|
|
|
|
|
2016-10-25 14:09:42 +09:00
|
|
|
### `clipboard.readFindText()` _macOS_
|
|
|
|
|
|
|
|
Returns `String` - The text on the find pasteboard. This method uses synchronous
|
|
|
|
IPC when called from the renderer process. The cached value is reread from the
|
|
|
|
find pasteboard whenever the application is activated.
|
|
|
|
|
|
|
|
### `clipboard.writeFindText(text)` _macOS_
|
|
|
|
|
|
|
|
* `text` String
|
|
|
|
|
|
|
|
Writes the `text` into the find pasteboard as plain text. This method uses
|
|
|
|
synchronous IPC when called from the renderer process.
|
|
|
|
|
2015-08-24 14:35:43 -07:00
|
|
|
### `clipboard.clear([type])`
|
2015-03-26 12:53:48 +08:00
|
|
|
|
2015-08-24 14:35:43 -07:00
|
|
|
* `type` String (optional)
|
2014-06-05 14:48:12 +08:00
|
|
|
|
2015-08-24 14:35:43 -07:00
|
|
|
Clears the clipboard content.
|
2013-08-14 15:43:35 -07:00
|
|
|
|
2015-08-24 14:35:43 -07:00
|
|
|
### `clipboard.availableFormats([type])`
|
2013-08-14 15:43:35 -07:00
|
|
|
|
2015-08-24 14:35:43 -07:00
|
|
|
* `type` String (optional)
|
2013-08-14 15:43:35 -07:00
|
|
|
|
2016-09-25 12:59:30 +13:00
|
|
|
Returns `String[]` - An array of supported formats for the clipboard `type`.
|
2013-08-14 15:43:35 -07:00
|
|
|
|
2015-08-24 14:35:43 -07:00
|
|
|
### `clipboard.has(data[, type])` _Experimental_
|
2013-08-14 15:43:35 -07:00
|
|
|
|
2015-05-27 13:35:51 +05:30
|
|
|
* `data` String
|
2015-08-24 14:35:43 -07:00
|
|
|
* `type` String (optional)
|
2013-08-14 15:43:35 -07:00
|
|
|
|
2016-09-25 12:59:30 +13:00
|
|
|
Returns `Boolean` - Whether the clipboard supports the format of specified `data`.
|
2015-05-27 13:35:51 +05:30
|
|
|
|
|
|
|
```javascript
|
2016-07-25 18:39:25 -07:00
|
|
|
const {clipboard} = require('electron')
|
|
|
|
console.log(clipboard.has('<p>selection</p>'))
|
2015-05-27 13:35:51 +05:30
|
|
|
```
|
|
|
|
|
2015-08-24 14:35:43 -07:00
|
|
|
### `clipboard.read(data[, type])` _Experimental_
|
2015-05-27 13:35:51 +05:30
|
|
|
|
|
|
|
* `data` String
|
2015-08-24 14:35:43 -07:00
|
|
|
* `type` String (optional)
|
2015-05-27 13:35:51 +05:30
|
|
|
|
2016-09-25 12:59:30 +13:00
|
|
|
Returns `String` - Reads `data` from the clipboard.
|
2013-08-14 15:43:35 -07:00
|
|
|
|
2015-08-24 14:35:43 -07:00
|
|
|
### `clipboard.write(data[, type])`
|
2015-07-07 10:47:33 +05:30
|
|
|
|
|
|
|
* `data` Object
|
2016-10-30 21:46:20 +11:00
|
|
|
* `text` String (optional)
|
|
|
|
* `html` String (optional)
|
|
|
|
* `image` [NativeImage](native-image.md) (optional)
|
|
|
|
* `rtf` String (optional)
|
|
|
|
* `bookmark` String (optional) - The title of the url at `text`.
|
2015-08-24 14:35:43 -07:00
|
|
|
* `type` String (optional)
|
2015-07-07 10:47:33 +05:30
|
|
|
|
|
|
|
```javascript
|
2016-07-25 18:39:25 -07:00
|
|
|
const {clipboard} = require('electron')
|
|
|
|
clipboard.write({text: 'test', html: '<b>test</b>'})
|
2015-07-07 10:47:33 +05:30
|
|
|
```
|
2015-08-24 14:35:43 -07:00
|
|
|
Writes `data` to the clipboard.
|