Sto sviluppando un componente aggiuntivo per Firefox usando sdk 1.17. Contiene un pannello con un pulsante all'interno (Sviluppato usando ExtJs), Voglio fare lo screenshot della pagina corrente quando l'utente fa clic sul pulsante. In Google Chrome è presente un'API (chrome.page-capture). Ma non ho trovato quello simile in Firefox. In firefox come eseguire questa attività dal file main.js.firefox addon sdk 1.17 cattura screenshot
5
A
risposta
5
O.k Ho trovato la risposta. Questo codice può essere utilizzato per acquisire la schermata intera della pagina.
Nel tuo main.js aggiungi questo codice.
var window = require('sdk/window/utils').getMostRecentBrowserWindow();
var tab = require('sdk/tabs/utils').getActiveTab(window);
var myData;
tabs.activeTab.attach({
contentScript: "self.postMessage(document.body.scrollHeight);",//recieves the total scroll height of tab
onMessage: function(data)
{
console.log("Tab data received: " + data);
myData = data;
var thumbnail = window.document.createElementNS("http://www.w3.org/1999/xhtml", "canvas");
window = tab.linkedBrowser.contentWindow;
thumbnail.width = window.screen.availWidth ;
thumbnail.height = window.screen.availHeight ;
var ctx = thumbnail.getContext("2d");
var snippetWidth = window.outerWidth ;
var snippetHeight = window.outerHeight ;
ctx.canvas.left = 0;
ctx.canvas.top = 0;
ctx.canvas.width = window.innerWidth;
ctx.canvas.height = myData;//canvas height is made equal to the scroll height of window
ctx.drawWindow(window, 0, 0, snippetWidth, snippetHeight+myData, "rgb(255,255,255)");//
var imageDataUri=thumbnail.toDataURL('image/png');
imageDataUri = imageDataUri.replace("image/png", "image/octet-stream");
tabs.open(imageDataUri);
}
});
Questo è fatto con addon sdk 1.17. Funziona alla grande.
Problemi correlati
- 1. Firefox Extension Addon SDK combina più "pulsanti di azione"
- 2. Pannello transparency firefox addon
- 3. come utilizzare posta nella funzione "Richiesta" a firefox-addon-sdk
- 4. localizzazione addon di Firefox
- 5. Come sviluppare Firefox Addon?
- 6. Firefox Addon Downloads.jsm
- 7. Firefox Addon console.log() Non funziona
- 8. Modifica dell'icona di installazione di Firefox addon
- 9. Il componente aggiuntivo firefox "cfx test" non funziona, perché?
- 10. appendChild in un XUL Firefox addon break
- 11. finestra di avviso nel mio addon firefox
- 12. Come sviluppare firefox addon usando angularjs
- 13. Android cattura screenshot sul dispositivo rooted
- 14. Cattura uno screenshot con C \ GTK
- 15. Cattura screenshot C# WPF con effetto SnippingTool
- 16. Perché sto ricevendo errori nello script di contenuto del pannello di Firefox Addon SDK?
- 17. Sviluppo Addon di Firefox - Utilizzo di interfaccia di basso livello o non-SDK
- 18. SDK per Firefox Addon: modi per visualizzare le opzioni per l'utente?
- 19. Come ricaricare un pannello popup del widget con firefox addon sdk?
- 20. comunicazione fra le pagine-mod e menu contestuale di Firefox Addon SDK
- 21. Aggiunta della funzionalità screenshot a un'estensione firefox
- 22. addon firefox: aggiunta icona al menu di contesto
- 23. Firefox Addon: come rimuovere le preferenze quando si disinstalla l'addon?
- 24. Impossibile creare Web Worker in linea in Firefox 35 addon
- 25. Come eseguire un comando windows da firefox addon?
- 26. Come sincronizzare le preferenze di firefox addon/extension?
- 27. "(metodo Callback) non definito" in accesso JSONP su Firefox Addon
- 28. Installazione in linea di Firefox addon dal sito web
- 29. ottenere gli elementi di documento HTML in firefox addon
- 30. iPhone SDK: Modalità Cattura immagine orizzontale
qualsiasi idea di prendere screenshot del contenuto flash –