¿Cómo uso la función de lienzo drawWindow en un complemento creado con el complemento sdk?

He creado un complemento de Firefox usando eladdon sdk. Estoy tratando de usar ellienzo drawWindow función.

Tengo el siguiente código para usar la función, donde ctx se refiere a un contexto de lienzo, que obtuve concanvas.getContext("2d").

ctx.drawWindow(window, 0, 0, 100, 200, "rgb(255,255,255)");

Cuando ejecuto este código, dentro de un script que se adjunta usando

tabs.activeTab.attach({
    contentScriptFile: data.url("app.js") // app.js contains the above line of code
});

Obtuve el siguiente error:

TypeError: ctx.drawWindow is not a function

Este error no se produce cuando invoco funciones como strokeRect y fillRect en el mismo objeto ctx.

Los documentos enesta página dice que necesitas privilegios de Chrome para usar el código, por lo que puede haber problemas. Yo esperaría un error diferente, basado en elcódigo Para la función.

Descubrí que puedo usar privilegios de Chrome en mi complemento usandoesta, pero ¿qué haría después para usar ctx.drawWindow?

Además, cuando ejecuté el código enesta pregunta, desde un bloc de notas en una página, en lugar de un complemento, en lugar de un "Error: la operación es insegura", obtengo el mismo "Excepción: ctx.drawWindow no es una función".

Así que, básicamente, lo que pregunto es, ¿cómo puedo usar el lienzo drawWindow en el complemento creado con el complemento SDK?

Editar: Estoy intentando hacer esto porque necesito un método para acceder a píxeles individuales de la página renderizada. Espero dibujar la página al lienzo y luego acceder al píxel usandogetImageData. Si existen otros métodos para acceder a píxeles individuales (en un complemento de Firefox), eso también sería útil.

Respuestas a la pregunta(1)

Su respuesta a la pregunta