有没有人有一个很好的教程来为Firefox和/或Chrome创建一个简单的屏幕截图插件?
发布于 2011-06-07 00:58:52
这是Firefox的一个片段。在您的overlay XUL中添加:
<html:canvas id="my-canvas" style="display: none;" />
然后在你的overlay 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的文章,从数据url创建nsiURI,然后在本地持久化它。
发布于 2011-06-06 06:55:40
有一个关于如何使用Chrome http://code.google.com/chrome/extensions/dev/samples.html#e1697cacebad05218798bf3e8a0f724517f0e8c3做到这一点的示例扩展
发布于 2011-06-06 06:52:34
不确定火狐,但在Chrome扩展中,你可以用chrome.tabs.captureVisibleTab()
捕获一个标签,它将返回Data URI格式的图像。之后,如果需要,您将能够使用Canvas元素操作图像。
https://stackoverflow.com/questions/6244334
复制相似问题