Schnappen Sie sich einen screenshot von Chrome mit Chrome Developer Tools?
Ist es möglich, schnappen Sie sich einen screenshot von einem geöffneten Fenster mit der Chrome-Entwicklung-Tools-remote-debugger?
Zum Beispiel bin ich die Verbindung zum remote-debug-port und ich habe diesen
code, erscheint ein leeres Fenster:
private void sendWindowPop(int width, int height) throws
IOException {
hsc.send("{\"method\": \"Runtime.evaluate\", \"id\": "
+ hsc.nextInt()
+ ", \"params\": {"
+ "\"expression\":
\"window.open('about:blank','name','toolbar=0,scrollbars=0,"
+ "location=0,status=0,menubar=0,resizable=0,width="
+ width
+ ",height="
+ height
+ "');\""
+ "}}");
(hsc ist meine Verbindung zum debugger auf http://localhost:9222)
Dann lade ich mir mein Ziel-URL mit:
private void loadPage(String uriString) throws IOException {
hsc.send("{\"method\": \"Page.open\", \"id\": " +
hsc.nextInt() + ", \"params\": {\"url\": \"" + uriString + "\"}}");
hsc.waitFor(ChromeNotifications.PAGE_LOADEVENTFIRED, DEFAULT_TIMEOUT_MILLIS);
}
Den code oben funktioniert gut, und zuerst öffnet ein Fenster und lädt dann die
URL. Idealerweise ist die nächste Sache, die ich tun möchte, ist schnappen Sie sich einen screenshot
der geladene web-Seite. Gerade jetzt, diese browser-Fenster pop-in eine
Xvfb virtuellen desktop, und ich kann mit ImageMagick ' s-import-tool zu greifen
ein screenshot von der Ziel-Fenster, aber nur, wenn Sie in der
Vordergrund.
Dies ist ein problem, da diese Anwendung wurde entwickelt, um laufen in
parallel mit mehreren Fenstern knallen in den virtuellen desktop. Jeder
Fenster überlappend mein Ziel-Fenster geben Sie mir nur einen schwarzen
screenshot, da Xfvb rendert nur, was sichtbar ist.
Ich schaute auch in die API-Referenz, Chrom.tabs.captureVisibleTab. Kein Glück gibt, es nicht erfassen, was nicht sichtbar ist.
Gibt es eine Möglichkeit, mit dem remote-debugger, schnappen Sie sich einen screenshot von einem
Fenster öffnen?
(für Referenz-Zwecke, meine ImageMagick-Befehl für den import ist dieser)
DISPLAY=:0.0 import -window "Google - Chromium" screenshot.png
Wo öffne ich die URL http://www.google.com in meinem Chrom browser mit loadPage() oben. Es funktioniert sehr gut, solange die "Google - Chrom" - Fenster, das angezeigt wird, frei ist und den Fokus hat. Drop ein anderes Fenster über einen Teil davon, und ich bekomme eine große schwarze Fläche, das war nicht gerendert.
Dank!
InformationsquelleAutor AWT | 2012-01-27
Du musst angemeldet sein, um einen Kommentar abzugeben.
Chrome-Remote-Debugging-Protokoll unterstützt jetzt die Seite.captureScreenshot Funktion
Hier ist ein Beispiel in coffee-script
(Ausschnitt aus
https://github.com/TeamMentor/TM_4_0_Design/blob/Issue_80_Jade_Cleanup/QA/API/QA-TM_4_0_Design.coffee#L54)
Page
Objekt?Hi, es sieht aus wie der Zweig nicht mehr gibt, nehmen Sie einen Blick an github.com/TeamMentor/TM_4_0_Design/blob/... und github.com/TeamMentor/TM_4_0_Design/blob/...
Gibt es etwas Verwertbares hier für jemanden, der nur will, fügen Sie einen Befehl in der Konsole-Bereich, oder drücken Sie einen hotkey?
InformationsquelleAutor Dinis Cruz
Versuchen die Aviary Screen Capture
Besuchen Sie diese Website:
http://www.webdesignerdepot.com/2011/08/25-must-have-chrome-extensions-for-web-designers-and-developers/
Ich hoffe, Sie finden, was Sie suchen!
Ich fand einige interessante Dinge, aber nichts Tat genau das, was ich suchte. Anstelle, ich bin in den Prozess des Schreibens meiner eigenen. Wünscht mir Glück! 🙂
Wenn Sie Hilfe benötigen, können Sie immer wieder hierher kommen 🙂
InformationsquelleAutor Adel Boutros
Wenn Sie müssen Java-basierte Lösung verwenden cdp4j zu erfassen ganze Seite Bildschirm.
Screenshot.java
InformationsquelleAutor