Gmail および Chrome 12 のクリップボードからの画像の貼り付け
Google のブログ投稿で、クリップボードから Gmail に画像を直接貼り付ける機能が明らかになりました。 Chrome の最新バージョンを使用しています。キー押下イベントにバインドされ、コンテキスト メニューからは機能しない ZeroClipboard とは異なり、この機能は別のアプローチを利用しているようです。
Chrome 12 で使用される Webkit では、イベントを検査する新しい「貼り付け」イベント ハンドラーが導入されています。 ClipboardData.items を追加し、getAsFile() メソッドを使用して画像を Blob として取得できるようにします。 JavaScript でこれを実現する方法は次のとおりです。
<code class="javascript">document.onpaste = function (event) { var items = (event.clipboardData || event.originalEvent.clipboardData).items; for (var index in items) { var item = items[index]; if (item.kind === 'file') { var blob = item.getAsFile(); var reader = new FileReader(); reader.onload = function (event) { console.log(event.target.result); // data url! }; reader.readAsDataURL(blob); } } };</code>
データ URL を取得したら、ページに画像を表示するか、FormData を使用して画像をアップロードできます。
この「ペースト」を使用することで、 " イベントと DataTransferItems の処理により、Chrome 12 では Gmail 内のクリップボードから画像を貼り付けることが可能になります。
以上がChrome 12 で Gmail のクリップボードから画像を貼り付けるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。