Las GUI modernas a menudo proporcionan un administrador de portapapeles que admite múltiples transacciones de cortar y pegar. En este modelo, el portapapeles se trata como una pila o un libro de recortes, y los nuevos cortes y copias se colocan en la parte superior de la lista de transacciones recientes.
Si su aplicación electron evita cualquier evento de teclado de forma predeterminada y desea filtrar los eventos de acuerdo con las acciones del usuario por usted mismo (o simplemente sea elegante y agregue botones de copiar / pegar en su interfaz de usuario), es posible que desee saber cómo manejar manualmente portapapeles.
Accediendo al Clibpoard
Para acceder al portapapeles, usaremos la siguiente línea:
const {clipboard} = require('electron');
La variable del portapapeles (en el alcance), le permitirá copiar, pegar y utilizar otros métodos que el portapapeles del sistema operativo tiene para ofrecer.
Recuperar contenido del portapapeles
Hay 3 formas de recuperar el contenido:
Como texto sin formato
Puede recuperar el contenido del portapapeles como texto sin formato utilizando el método readText
del portapapeles.
const {clipboard} = require('electron');
var content = clipboard.readText();
alert(content);
Como HTML
Puede recuperar el contenido del portapapeles pero con el contenido de marcado utilizando el readHtml
método.
const {clipboard} = require('electron');
var content = clipboard.readHtml();
alert(content);
Como RTF
Puede recuperar el contenido del portapapeles como RTF (formato de texto enriquecido) usando el método readRtf
:
const {clipboard} = require('electron');
var content = clipboard.readRtf();
alert(content);
Establecer contenido del portapapeles
Hay 3 métodos para configurar el contenido del portapapeles en su aplicación.
Como texto sin formato
Puede llenar el contenido del portapapeles con texto sin formato usando el método writeText
.
const {clipboard} = require('electron');
var content = "Text that will be now on the clipboard as text";
clipboard.writeText(content);
Como HTML
Puede llenar el contenido del portapapeles con marcado utilizando el writeText
método.
const {clipboard} = require('electron');
var content = "<b>Try to paste this content into some editor</b> and see how this <em>Works</em>";
clipboard.writeHtml(content);
Como RTF
Puede completar el contenido del portapapeles como RTF (formato de texto enriquecido) usando el método de escritura writeRtf
:
const {clipboard} = require('electron');
var content = "{\rtf1\ansi{\fonttbl\f0\fswiss Helvetica;}\f0\pard This is some {\b bold} text.\par }";
clipboard.writeRtf(content);
Lea la documentación oficial del portapapeles aquí en el repositorio.
Conviertete en un programador más sociable