Aller au contenu principal

clipboard

Permet d'effectuer les opérations copier et coller dans le presse-papiers.

Processus : Main, Renderer

On Linux, there is also a selection clipboard. To manipulate it you need to pass selection to each method:

const { clipboard } = require('electron')

clipboard.writeText('Example string', 'selection')
console.log(clipboard.readText('selection'))

Méthodes

Le module clipboard dispose des méthodes suivantes :

Remarque : Les APIs expérimentales sont marquées comme telles et sont susceptibles d'être supprimés à l'avenir.

clipboard.readText([type])

  • type string (optional) - Can be selection or clipboard; default is 'clipboard'. selection n'est disponible que sur Linux.

Retourne string - Le contenu du presse-papiers en tant que texte brut.

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 string
  • type string (optional) - Can be selection or clipboard; default is 'clipboard'. selection n'est disponible que sur Linux.

Écrit le text dans le presse-papiers au format texte brut.

const { clipboard } = require('electron')

const text = 'bonjour je suis un peu de texte!'
clipboard.writeText(text)

clipboard.readHTML([type])

  • type string (optional) - Can be selection or clipboard; default is 'clipboard'. selection n'est disponible que sur Linux.

Retourne string - Le contenu du presse-papiers en tant que balisage.

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 string
  • type string (optional) - Can be selection or clipboard; default is 'clipboard'. selection n'est disponible que sur Linux.

Écrit le markup dans le presse-papiers.

const { clipboard } = require('electron')

clipboard.writeHTML('<b>Hi</b>')

clipboard.readImage([type])

  • type string (optional) - Can be selection or clipboard; default is 'clipboard'. selection n'est disponible que sur Linux.

Renvoie NativeImage : contenu de l’image dans le presse-papiers.

clipboard.writeImage(image[, type])

  • image NativeImage
  • type string (optional) - Can be selection or clipboard; default is 'clipboard'. selection n'est disponible que sur Linux.

Écrit l'image dans le presse-papiers.

clipboard.readRTF([type])

  • type string (optional) - Can be selection or clipboard; default is 'clipboard'. selection n'est disponible que sur Linux.

Retourne string - Le contenu du presse-papiers en RTF.

const { clipboard } = require('electron')

clipboard.writeRTF('{\\rtf1\\ansi{\\fonttbl\\f0\\fswiss Helvetica;}\\f0\\pard\nCeci est du texte {\\b bold}. \par\n}')

const rtf = clipboard.readRTF()
console.log(rtf)
// {\\rtf1\\ansi{\\fonttbl\\f0\\fswiss Helvetica;}\\f0\\pard\nIl s'agit de quelques {\\b bold} text.\\par\n

clipboard.writeRTF(text[, type])

  • text string
  • type string (optional) - Can be selection or clipboard; default is 'clipboard'. selection n'est disponible que sur Linux.

Écrit le text dans le presse-papiers en RTF.

const { clipboard } = require('electron')

const rtf = '{\\rtf1\\ansi{\\fonttbl\\f0\\f0\\fswiss Helvetica;}\\f0\\pard\nCeci est un peu {\\b bold} text.\\par\n}'
clipboard.writeRTF(rtf)

clipboard.readBookmark() macOS Windows

Retourne Object:

  • title string
  • url string

Retourne un objet contenant title et url clés représentant le marque-page dans le presse-papiers. La valeur des clés title et url sera une chaîne de caractères vide si le marque-page n'est pas disponible. La valeur title sera toujours vide sur Windows.

clipboard.writeBookmark(title, url[, type]) macOS Windows

  • Chaîne title - Inutilisée sous Windows
  • url string
  • type string (optional) - Can be selection or clipboard; default is 'clipboard'. selection n'est disponible que sur Linux.

Écrit le title (macOs seulement) et url dans le presse-papiers comme marque-page.

Remarque : La plupart des applications sous Windows ne prennent pas en charge le collage des signets donc vous pouvez utiliser clipboard.write pour écrire à la fois un signet et un texte de secours dans le presse-papiers.

const { clipboard } = require('electron')

clipboard.writeBookmark({
text: 'https://electronjs.org',
signet: 'Page d'accueil Electron'
})

clipboard.readFindText() macOS

Returns string - The text on the find pasteboard, which is the pasteboard that holds information about the current state of the active application’s find panel.

Cette méthode utilise un IPC synchronisé lorsqu'il est appelé depuis le processus de rendu. La valeur mise en cache est relue à partir du pasteboard à chaque fois que l'application est activée.

clipboard.writeFindText(text) macOS

  • text string

Écrit le text dans le presse-papier find (le presse-papier qui contient des informations sur l'état actuel du panneau de recherche de l'application active) en texte brut. Cette méthode utilise un IPC synchronisé lorsqu'il est appelé depuis le processus de rendu.

clipboard.clear([type])

  • type string (optional) - Can be selection or clipboard; default is 'clipboard'. selection n'est disponible que sur Linux.

Efface le contenu du presse-papiers.

clipboard.availableFormats([type])

  • type string (optional) - Can be selection or clipboard; default is 'clipboard'. selection n'est disponible que sur Linux.

Retourne string[] - Un tableau des formats pris en charge pour le type du presse-papiers.

const { clipboard } = require('electron')

formats const = clipboard.availableFormats()
console.log(formats)
// [ 'text/plain', 'text/html' ]

clipboard.has(format[, type]) Experimental

  • format string
  • type string (optional) - Can be selection or clipboard; default is 'clipboard'. selection n'est disponible que sur Linux.

Retourne boolean - Selon que le presse-papiers prend en charge ou pas le format spécifié.

const { clipboard } = require('electron')

const hasFormat = clipboard.has('public/utf8-plain-text')
console.log(hasFormat)
// 'true' ou 'false'

clipboard.read(format) Expérimental

  • format string

Retourne string - Lit le type de format depuis le presse-papiers.

format ne doit contenir que des caractères ASCII valides avec / comme séparateur. a/c, a/bc sont des formats valides tandis que /abc, abc/, a/, /a, a ne sont pas valides.

clipboard.readBuffer(format) Expérimental

  • format string

Retourne un Buffer - Selont le type de format depuis le presse-papiers.

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(out))
// true

clipboard.writeBuffer(format, buffer[, type]) Experimental

  • format string
  • buffer Buffer
  • type string (optional) - Can be selection or clipboard; default is 'clipboard'. selection n'est disponible que sur Linux.

Écrit le buffer dans le presse-papiers selon le format.

const { clipboard } = require('electron')

const buffer = Buffer.from('writeBuffer', 'utf8')
clipboard.writeBuffer('public/utf8-plain-text', buffer)

clipboard.write(data[, type])

  • Objet data
    • text string (facultatif)
    • html string (facultatif)
    • image NativeImage (facultatif)
    • rtf string (facultatif)
    • bookmark string (facultatif) - Le titre de l'url dans text.
  • type string (optional) - Can be selection or clipboard; default is 'clipboard'. selection n'est disponible que sur Linux.

Écrit data dans le presse-papiers.

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' }