1

クリップボードに既にコピーされている画像を貼り付けるボタンをクリックしてボタンを提供したいエディターで作業しています。セキュリティ上の理由により、ブラウザがクリップボードへのアクセスを許可していないため、これを行うことができませんでした。

私はGoogleドライブをチェックして、それがGoogleによってどのように行われているかを調べました。Chromeでは、clipboardReadおよびclipboardWrite権限を要求しているChromeウェブストアからGoogleドライブウェブアプリをインストールするように求められています。アプリがインストールされると、すべてがGoogleドライブの魅力のように機能します。ドキュメントには、document.execCommand('paste')を使用すると書かれています。しかし、これを実装するサンプルが見つからず、アプリケーションで同じものを実装できませんでした。ここの誰かが、画像がクリップボードにあるときにこれを機能させる方法のサンプルを教えてもらえますか?

4

3 に答える 3

1

クレジットはhttps://stackoverflow.com/a/6338207/85597に移動します

// window.addEventListener('paste', ... or
document.onpaste = function(event){
  var items = event.clipboardData.items;
  console.log(JSON.stringify(items)); // will give you the mime types
  var blob = items[0].getAsFile();
  var reader = new FileReader();
  reader.onload = function(event){
    console.log(event.target.result)}; // data url!
  reader.readAsDataURL(blob);
}
于 2013-07-02T17:24:30.197 に答える
1

アプリケーションのマニフェスト ファイルにアクセス許可 (clipboardRead と clipboardWrite) を追加する必要があります。クリップボードからテキスト/画像を貼り付ける場合は、html のダミーのテキスト ボックス/画像要素にフォーカスを与えてからドキュメントを実行する必要があります。 execCommand('paste') となり、この要素はクリップボードにコピーされたアイテムにアクセスし、それを使用するテキストまたは画像を取得します。

于 2013-01-21T18:19:09.970 に答える