clipboard.setImageData()
Copie une image dans le presse-papiers. L'image est recodée avant d'être écrite dans le presse-papiers. Si l'image n'est pas valide, le presse-papiers n'est pas modifié.
L'image est fournie en tant que ArrayBuffer
contenant l'image codée. Les formats JPEG et PNG sont pris en charge.
Bien que cette API soit basée sur l'API clipboard.setImageData()
de Chrome, il existe certaines différentes :
- L'API Chrome est réservée aux applications et non aux extensions.
- Cette API nécessite uniquement la permission
"clipboardWrite"
, tandis que la version Chrome nécessite également la permission"clipboard"
. - L'API de Chrome utilise des rappels et cette API ne prend en charge que les promises.
- Cette API ne prend pas en charge le paramètre
additionalItems
.
C'est une fonction asynchrone qui renvoie une Promise
.
Syntaxe
browser.clipboard.setImageData(imageData, imageType);
Paramètres
imageData
-
ArrayBuffer
. Les données de l'image codées. imageType
-
Un
DOMString
indiquant le type d'image contenue dans le fichierimageData
:"png"
ou"jpeg"
.
Valeur de retour
Une Promise
qui sera remplie sans arguments si l'opération a réussi, ou rejetée, s'il y a une erreur (par exemple parce que les données ne représentaient pas une image valide).
Compatibilité des navigateurs
BCD tables only load in the browser
Exemples
Copiez une image distante :
// requires:
// * the host permission for "https://cdn.mdn.mozilla.net/*"
// * the API permission "clipboardWrite"
fetch("https://cdn.mdn.mozilla.net/static/img/favicon144.png")
.then((response) => response.arrayBuffer())
.then((buffer) => browser.clipboard.setImageData(buffer, "png"));
Copiez une image fournie avec l'extension :
// requires the API permission "clipboardWrite"
fetch(browser.runtime.getURL("image.png"))
.then((response) => response.arrayBuffer())
.then((buffer) => browser.clipboard.setImageData(buffer, "png"));
Note :
Cette API est basée sur l'API Chromium chrome.clipboard
.