2010-08-20 9 views
5

estoy usando el siguiente código para capturar una captura de pantalla de la ficha seleccionada¿Cómo puedo cambiar el tamaño de una ficha capturada con chrome.tabs.captureVisibleTab (extensión de Chrome)

chrome.tabs.captureVisibleTab(undefined, function(data) { display(data) }); 

La API dice su posible para cambiar el tamaño de la pestaña (http://code.google.com/chrome/extensions/tabs.html#method-captureVisibleTab) pero no puedo encontrar la forma de hacerlo. Por el momento, todas las capturas de pantalla salen a tamaño completo (1440x900) pero solo las necesito en tamaños de miniaturas.

¿Alguien sabe cómo usar esta API para hacer eso?

Gracias.

Respuesta

10

La API de Chrome no proporciona el tamaño de la imagen del captureVisibleTab. Lo que hace esa función es básicamente lo que veas es lo que obtienes como una imagen de esa pestaña.

Si desea cambiar el tamaño de la imagen para esa pestaña. Puede usar HTML5 Canvas. http://www.whatwg.org/specs/web-apps/current-work/multipage/the-canvas-element.html

Puede cargar la imagen en un lienzo, y desde ese lienzo, puede cambiar el tamaño de la imagen y hacer lo que desee con ella. Puede colocar la imagen en el contexto lienzo utilizando drawImage

http://www.whatwg.org/specs/web-apps/current-work/multipage/the-canvas-element.html#images

En función de los argumentos de drawImage, puede cambiar su tamaño, o se puede usar otras funciones de la lona para recortar o cultivo.

Luego, una vez que haya hecho el cambio de tamaño de su imagen, puede usar el toDataURL para convertirla de nuevo para que pueda usarla o almacenarla.

http://www.whatwg.org/specs/web-apps/current-work/multipage/the-canvas-element.html#dom-canvas-todataurl

+0

Gracias Mohamed, ¿Qué el parámetro de "calidad" hacer entonces, parece que lo que necesito para configurar pero no saben cómo hacerlo. – Tom

+0

I la calidad es de 1 a 100 ya que es un número entero. Es un campo opcional, pero si desea crear miniaturas, sería genial controlar la calidad con esa propiedad, ya que se realiza en C++ y cambiar su tamaño utilizando Canvas. Hay otra pregunta sobre el desbordamiento apilado sobre cómo cambiar el tamaño de las imágenes con calidad utilizando Canvas. Pero recomiendo usar la API de extensión de Chrome para reducir la calidad y usar Canvas para cambiar el tamaño: http://stackoverflow.com/questions/2303690/resizing-an-image-in-an-html5-canvas –

Cuestiones relacionadas