clipboard
Выполняет копирование и вставку в буфер обмена системы.
Process: Main, Renderer (non-sandboxed only)
В Linux также есть selection
буфер обмена. Для работы с ним необходимо передать selection
каждому методу:
const { clipboard } = require('electron')
clipboard.writeText('Example string', 'selection')
console.log(clipboard.readText('selection'))
Методы
Модуль clipboard
имеет следующие методы:
Примечание: Экспериментальные API помечены и могут быть удалены в будущем.
clipboard.readText([type])
type
string (опционально) - Может бытьselection
илиclipboard
; по умолчанию 'clipboard'.selection
доступен только в Linux.
Возвращает string
— содержимое в буфере обмена в виде обычного текста.
const { clipboard } = require('electron')
clipboard.writeText('hello i am a bit of text!')
const text = clipboard.readText()
console.log(text)
// hello i am a bit of text!'
clipboard.writeText(text[, type])
text
stringtype
string (опционально) - Может бытьselection
илиclipboard
; по умолчанию 'clipboard'.selection
доступен только в Linux.
Записывает text
в буфер обмена, как обычный текст.
const { clipboard } = require('electron')
const text = 'hello i am a bit of text!'
clipboard.writeText(text)
clipboard.readHTML([type])
type
string (опционально) - Может бытьselection
илиclipboard
; по умолчанию 'clipboard'.selection
доступен только в Linux.
Возвращает string
- содержимое в буфере обмена в виде разметки.
const { clipboard } = require('electron')
clipboard.writeHTML('<b>Hi</b>')
const html = clipboard.readHTML()
console.log(html)
// <meta charset='utf-8'><b>Hi</b>
clipboard.writeHTML(markup[, type])
markup
stringtype
string (опционально) - Может бытьselection
илиclipboard
; по умолчанию 'clipboard'.selection
доступен только в Linux.
Записывает markup
в буфер обмена.
const { clipboard } = require('electron')
clipboard.writeHTML('<b>Hi</b>')
clipboard.readImage([type])
type
string (опционально) - Может бытьselection
илиclipboard
; по умолчанию 'clipboard'.selection
доступен только в Linux.
Returns NativeImage
- The image content in the clipboard.
clipboard.writeImage(image[, type])
image
NativeImagetype
string (опционально) - Может бытьselection
илиclipboard
; по умолчанию 'clipboard'.selection
доступен только в Linux.
Записывает image
в буфер обмена.
clipboard.readRTF([type])
type
string (опционально) - Может бытьselection
илиclipboard
; по умолчанию 'clipboard'.selection
доступен только в Linux.
Возвращает string
- содержимое в буфере обмена в виде RTF.
const { clipboard } = require('electron')
clipboard.writeRTF('{\\rtf1\\ansi{\\fonttbl\\f0\\fswiss Helvetica;}\\f0\\pard\nThis is some {\\b bold} text.\\par\n}')
const rtf = clipboard.readRTF()
console.log(rtf)
// {\\rtf1\\ansi{\\fonttbl\\f0\\fswiss Helvetica;}\\f0\\pard\nThis is some {\\b bold} text.\\par\n}
clipboard.writeRTF(text[, type])
text
stringtype
string (опционально) - Может бытьselection
илиclipboard
; по умолчанию 'clipboard'.selection
доступен только в Linux.
Записывает text
в буфер обмена как RTF.
const { clipboard } = require('electron')
const rtf = '{\\rtf1\\ansi{\\fonttbl\\f0\\fswiss Helvetica;}\\f0\\pard\nThis is some {\\b bold} text.\\par\n}'
clipboard.writeRTF(rtf)
clipboard.readBookmark()
macOS Windows
Возвращает Object
:
title
stringurl
string
Возвращает объект, содержащий ключи title
и url
, представляющие закладку в буфере обмена. Значения title
и url
будут пустыми строками, когда закладки недоступны. The title
value will always be empty on Windows.
clipboard.writeBookmark(title, url[, type])
macOS Windows
title
string - Unused on Windowsurl
stringtype
string (опционально) - Может бытьselection
илиclipboard
; по умолчанию 'clipboard'.selection
доступен только в Linux.
Writes the title
(macOS only) and url
into the clipboard as a bookmark.
Примечание: Большинство приложений на Windows не поддерживают вставку закладок в них, так что Вы можете использовать clipboard.write
, чтобы записать как закладку, так и резервный текст в буфер обмена.
const { clipboard } = require('electron')
clipboard.writeBookmark('Electron Homepage', 'https://electronjs.org')
clipboard.readFindText()
macOS
Возвращает string
- текст в панели поиска, который представляет собой информацию о текущем состоянии панели поиска активного приложения.
Этот метод использует синхронный IPC, когда вызывается в процессе рендеринга. Закэшированное значение перечитывается из буфера обмена, всякий раз, когда приложение активировано.
clipboard.writeFindText(text)
macOS
text
string
Записывает text
в панель поиска (панель, которая содержит информацию о текущем состоянии панели поиска активного приложения) в виде простого текста. Этот метод использует синхронный IPC, когда вызывается в процессе рендеринга.
clipboard.clear([type])
type
string (опционально) - Может бытьselection
илиclipboard
; по умолчанию 'clipboard'.selection
доступен только в Linux.
Очищает содержимое буфера обмена.
clipboard.availableFormats([type])
type
string (опционально) - Может бытьselection
илиclipboard
; по умолчанию 'clipboard'.selection
доступен только в Linux.
Возвращает string[]
- массив поддерживаемых форматов для type
буфера обмена.
const { clipboard } = require('electron')
const formats = clipboard.availableFormats()
console.log(formats)
// [ 'text/plain', 'text/html' ]
clipboard.has(format[, type])
Экспериментально
format
stringtype
string (опционально) - Может бытьselection
илиclipboard
; по умолчанию 'clipboard'.selection
доступен только в Linux.
Возвращает boolean
- поддерживает ли буфер обмена указанный format
.
const { clipboard } = require('electron')
const hasFormat = clipboard.has('public/utf8-plain-text')
console.log(hasFormat)
// 'true' or 'false'
clipboard.read(format)
Экспериментально
format
string
Возвращает string
- читает тип format
из буфера обмена.
format
should contain valid ASCII characters and have /
separator. a/c
, a/bc
are valid formats while /abc
, abc/
, a/
, /a
, a
are not valid.
clipboard.readBuffer(format)
Экспериментально
format
string
Возвращает Buffer
- читает тип format
из буфера обмена.
const { clipboard } = require('electron')
const buffer = Buffer.from('this is binary', 'utf8')
clipboard.writeBuffer('public/utf8-plain-text', buffer)
const ret = clipboard.readBuffer('public/utf8-plain-text')
console.log(buffer.equals(ret))
// true
clipboard.writeBuffer(format, buffer[, type])
Экспериментально
format
stringbuffer
Buffertype
string (опционально) - Может бытьselection
илиclipboard
; по умолчанию 'clipboard'.selection
доступен только в Linux.
Записывает buffer
в буфер обмена, как format
.
const { clipboard } = require('electron')
const buffer = Buffer.from('writeBuffer', 'utf8')
clipboard.writeBuffer('public/utf8-plain-text', buffer)
clipboard.write(data[, type])
data
Objecttext
string (опционально)html
string (опционально)image
NativeImage (optional)rtf
string (опционально)bookmark
string (опционально) - заголовок ссылки наtext
.
type
string (опционально) - Может бытьselection
илиclipboard
; по умолчанию 'clipboard'.selection
доступен только в Linux.
Записывает data
в буфер обмена.
const { clipboard } = require('electron')
clipboard.write({
text: 'test',
html: '<b>Hi</b>',
rtf: '{\\rtf1\\utf8 text}',
bookmark: 'a title'
})
console.log(clipboard.readText())
// 'test'
console.log(clipboard.readHTML())
// <meta charset='utf-8'><b>Hi</b>
console.log(clipboard.readRTF())
// '{\\rtf1\\utf8 text}'
console.log(clipboard.readBookmark())
// { title: 'a title', url: 'test' }