创建一个截图插件

时间:2011-06-05 16:47:58

标签: firefox-addon google-chrome-extension screen-capture

有没有人有关于为Firefox和/或Chrome创建简单屏幕捕获插件的好教程?

3 个答案:

答案 0 :(得分:5)

这是Firefox的一个代码段。在你的叠加XUL中添加:

    <html:canvas id="my-canvas" style="display: none;" />

然后在您的重叠式javascript中,listen for new document loads此片段会将屏幕截图保存到文件中:

    var canvas = document.getElementById('my-canvas');
    var context = canvas.getContext('2d');

    //Find the window dimensions
    canvas.height = doc.defaultView.innerHeight; //doc is the content document that you listened for
    canvas.width = doc.defaultView.innerWidth;

    context.drawWindow(doc.defaultView, 0, 0, canvas.width, canvas.height, "rgba(0,0,0,0)");

    //Create a data url from the canvas
    var dataUrl = canvas.toDataURL("image/png");

了解nsiIOService和nsiWebBrowserPersist,从数据网址创建一个nsiURI,然后在本地保存。

答案 1 :(得分:2)

有一个关于如何使用Chrome http://code.google.com/chrome/extensions/dev/samples.html#e1697cacebad05218798bf3e8a0f724517f0e8c3

执行此操作的示例扩展

答案 2 :(得分:1)

不确定Firefox,但在Chrome扩展程序中,您可以捕获chrome.tabs.captureVisibleTab()的标签,该标签会以Data URI格式返回图片。之后,如果需要,您可以使用Canvas元素操作图像。