2011-01-01 8 views

Antwort

66

Da Sie dies in Chrome-Erweiterungen verwenden, verfügt die Tab API über eine Methode namens captureVisibleTab, mit der der sichtbare Bereich der aktuell ausgewählten Registerkarte im angegebenen Fenster erfasst werden kann.

Um dies zu verwenden, fügen Sie einfach "Registerkarten" zu Ihrem Manifest permissions hinzu. Und aus dem Hintergrund-Seite oder Pop-up (oder jede andere Nebenseite), rufen Sie einfach diese Methode wie folgt aus:

chrome.tabs.captureVisibleTab(null, {}, function (image) { 
    // You can add that image HTML5 canvas, or Element. 
}); 

Sie die Eigenschaft steuern kann durch Zugabe von {Qualität: 50} und das Format ändern, werden alle beschrieben in den oben genannten Dokumenten.

Die Schönheit von HTML5, können Sie dieses Bild mit HTML5 Canvas ändern, können Sie manipulieren, transformieren, modifizieren, clip, alles, was Sie wollen, sehr leicht!

Hoffe das ist, was Sie suchen! Frohes neues Jahr!

+2

Ich habe die Erlaubnis für Tabs hinzugefügt, aber wenn ich das 'Bild' benutze, bekomme ich 'undefiniert'. Hast du eine Ahnung warum? –

+0

Eine Möglichkeit, einen Screenshot der nicht sichtbaren Registerkarte zu erstellen? –

+1

, um einen Screenshot zu machen, benötigen Sie Erlaubnis –

22

Ich bin mir nicht sicher, ob dies vorhanden war, als die ursprüngliche Antwort gegeben wurde, aber Google hat nun ein Beispiel zur Verfügung, die zeigt, wie Screenshots nehmen:

http://developer.chrome.com/extensions/samples.html

Suche nach „Test Screenshot Extension“ auf dieser Seite.

6

Wenn Sie nach Arbeitsbeispiel suchen, habe ich Repo mit Erweiterung erstellt, die Screenshot der gesamten Webseite machen. Schau mal hier: https://github.com/marcinwieprzkowicz/take-screenshot

+0

Ich habe versucht, Ihre Erweiterung zu verwenden, hatte aber dieselben Probleme wie die, die auf der Problemseite des Repos erwähnt wurden. – Sridarshan

+0

ich auch, Fehler bekommen. Abgelegt als ein Problem: https://github.com/marcinwieprzkowicz/take-screenshot/issues/2 –

Verwandte Themen