73 votes

Prendre une capture d'écran en utilisant javascript pour les extensions chrome

J'ai fait beaucoup de recherches sur la prise de photos avec JS, mais aucune ne semble être utile. Certains disent utiliser des contrôles activeX, ce qui ne convient pas à ma situation. J'espérais prendre des photos avec JS et les télécharger sur un serveur.

92voto

Mohamed Mansour Points 18019

Depuis que vous utilisez ce dans les Extensions de Chrome, l' Onglet API a une méthode appelée captureVisibleTab, qui permet la capture de la zone visible de l'onglet actuellement sélectionné dans la fenêtre spécifiée.

Pour l'utiliser il suffit d'ajouter "onglets" pour vos autorisations de manifester. Et à partir de votre page d'arrière-plan, ou un pop-up (ou toute autre extension de la page), il vous suffit d'appeler la méthode comme ceci:

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

Vous pouvez contrôler la propriété par l'ajout de {qualité: 50} et modifier le format trop, tous décrits dans les documents mentionnés ci-dessus.

La beauté de HTML5, vous pouvez modifier l'image avec HTML5 Canvas, vous pouvez manipuler, transformer, modifier, clip, tout ce que vous voulez, très facilement!

Espérons qu'est ce que vous cherchez! Ans Nouveau!

31voto

Todd Price Points 703

Je ne sais pas si cette information était disponible au moment de la réponse initiale, mais Google dispose maintenant d'un exemple montrant comment prendre des captures d'écran:

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

Recherchez "Test Screenshot Extension" sur cette page.

7voto

Si vous cherchez un exemple de travail, j'ai créé un dépôt avec extension qui prend une capture d'écran de la page Web entière. Jetez un coup d'oeil ici: https://github.com/marcinwieprzkowicz/take-screenshot

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X