阅读:3451回复:7
请问能否给这个截图脚本加上鼠标手势或快捷键呢?
很好用的一个网页截屏脚本,可以把整幅(从头到脚)网页另存为图片
可惜每次要到菜单里去点——我的菜单设置ALT打开的,比较麻烦。 请问各位达人能否给这脚本加上鼠标手势或快捷键?或者另推荐一款脚本也好啊 多谢啦 :) // ==UserScript== // @name Capture Web Page for userChrome.js // @include main // @include chrome://browser/content/browser.xul // ==/UserScript== /* 网页截图 - Griever - http://d.hatena.ne.jp/Griever/20081222/1229958279 を勝手にuserChrome.js化 */ //ページ全体をキャプチャ (function(){ var captureMenu = document.createElement("menuitem"); captureMenu.setAttribute("label","Capture This Page"); captureMenu.addEventListener("command",function(){ var win = window.content; var w = win.document.width; var h = win.document.height; var pos = document.getElementById('status-bar'); var scrollbox = document.createElement('scrollbox'); scrollbox.width = '1'; scrollbox.height = '1'; pos.appendChild(scrollbox); var canvas = win.document.createElement('canvas'); canvas.style.display = 'inline'; canvas.width = w; canvas.height = h; scrollbox.appendChild(canvas); var ctx = canvas.getContext("2d"); ctx.clearRect(0, 0, canvas.width, canvas.height); ctx.save(); ctx.scale(1.0, 1.0); ctx.drawWindow(win, 0, 0, w, h, "rgb(255,255,255)"); ctx.restore(); var url = canvas.toDataURL("image/png"); const IO_SERVICE = Components.classes['@mozilla.org/network/io-service;1'] .getService(Components.interfaces.nsIIOService); url = IO_SERVICE.newURI(url, null, null); var fp = Components.classes['@mozilla.org/filepicker;1'] .createInstance(Components.interfaces.nsIFilePicker); fp.init(window, "Save Screenshot As", fp.modeSave); fp.appendFilters(fp.filterImages); fp.defaultExtension = "png"; fp.defaultString = win.document.title + ".png"; if ( fp.show() == fp.returnCancel || !fp.file ) return; var wbp = Components.classes['@mozilla.org/embedding/browser/nsWebBrowserPersist;1'] .createInstance(Components.interfaces.nsIWebBrowserPersist); wbp.saveURI(url, null, null, null, null, fp.file); pos.removeChild(scrollbox); },false); document.getElementById("menu_ToolsPopup").insertBefore( captureMenu, document.getElementById("sanitizeSeparator")); })(); |
|
1楼#
发布于:2010-01-18 12:22
找了个截屏脚本WebScreenShot.uc.xul
可惜在我机器上导致FF死掉……cpu占用50%,内存飙升……也没有快捷、手势之类的…… 达人现身啊,呵呵 多谢 |
|
2楼#
发布于:2010-01-18 12:22
哈哈,多谢xelnaga
我用过screengrab,它的全页面截屏不能用……怪哉 我把你给我的代码一股脑扔到“MouseGestures.uc.js”(http://www.xuldev.org/misc/ucjs.php)里面了…… 居然都好用,哈哈,多谢多谢 只是划手势的时候以前状态栏里的中文提示“鼠标手势:……”变成了英文的“Gesture:……” 我自己到脚本里找这个单词,改成中文(用EditPlus修改),出来的是乱码……汗 请问大侠,我直接粘贴到MouseGestures.uc.js里面是否有多余的代码呢?要删掉点什么吗? 多谢~~~ |
|
3楼#
发布于:2010-01-18 12:22
|
|