2012-03-02 37 views
7

Goggle'da arama yapıyorum ve herhangi bir cevap bulamadım. Yeni pano API'sı, kopya görüntüsünü panoya kopyala document.exec command kullanarak destekler. Evet ise, görüntü olarak panoya nasıl kopyalanabilirim data url?Chrome uzantıları, kopyadaki resmi panoya destekliyor mu?

Webpage Screenshot uzantısının geliştiricisiyim ve görüntüyü panoya kopyalamanın bir yolunu arıyorum. Ayrıca, görüntüyü belirli bir yazılımla açmanın bir yolunu da arıyorum.

cevap

1

Ben bir ScreenShotShare krom uzantısı geliştiriyorum, ben de kırpılmış görüntü panoya kopyalama ihtiyacım var. Ve çözümün benim için çalıştığını gördüm.
1. Ekle "clipboardWrite" manifest.json dosyasında izinlerine, "clipboardRead"
2. background.js ile background.html kopyalama işi
3. eklenti
4. I background.html için background.js

copyImageToClipboard: function() { 
    var img = $('clipboard-img'); 
    img.src = localStorage[this.screenshotURIName]; // I store the image URI in localStorage 
    var div = $('clipboard-div'); 
    div.contentEditable = true; 
    var range; 
    if (document.createRange) { 
     range = document.createRange(); 
     range.selectNodeContents(div); 
     window.getSelection().removeAllRanges(); 
     window.getSelection().addRange(range); 
     div.focus(); 
     document.execCommand('copy'); 
    } 
    div.contentEditable = false; 
    } 

+0

Bu benim için çalışmıyor. Hiçbir şey kopyalamaz (yalnızca belirttiğim resim başlığı). Çalışan bir örneğiniz var mı? – Shluch

+0

Bu yolla sadece Evernote gibi bir metin editörü için çalıştım ve kelime ve ipages için çalışmaz. Bir arkadaşım bana şöyle dedi: img ve tetik cmd + c veya ctrl + c odaklan, denedim ama başarı değil. Bazı adam webkit dedi, klavyeEvent keyCode üzerine bir hata var, ben http://jsbin.com/EruQEFoH/2/edit denedim, ama henüz başarılı değil – Cyanny

1

clipboardData API neredeyse tüm tarayıcıda uygulanmaktadır, bu nedenle bunun yerine docuemnt.exec komut, ayrıca benzer kullanım durumunda sahiptir aşağıdaki bağlantıyı bakın aşağıda deneyebilirsiniz işlemesine "copyImageToClipboard" uygulamak senin.

https://www.lucidchart.com/techblog/2014/12/02/definitive-guide-copying-pasting-javascript/

clipboardData.setData (text/düz, selection.getText()); clipboardData.setData ('application/officeObj', selection.serialize()); clipboardData.setData ('image/bmp', çizim (seçim)); clipboardData.setData ('text/html', ...);

+0

Birisi bu Chrome çalışıyor olduğunu onaylayabilir miyim? – Aminadav

+0

lucidchart krom uzantısını yükleyebilir ve onunla aruond oynayabilir, özel çizimini yapıştırabilirsiniz. – Gomes