Take screenshots using electron
npm install electron-screenshot-service
var fs = require('fs');
var screenshot = require('electron-screenshot-service');
screenshot({
url : 'http://google.de',
width : 1024,
height : 768
})
.then(function(img){
fs.writeFile('./out.png', img.data, function(err){
screenshot.close();
});
});
Will return a Promise containing an object like:
{
data: <Buffer >
size: {
width: X
height: N
}
}
In addition to all options that can be passed to the BrowserWindow you can pass:
Type: number
(milliseconds)
Default: 0
Delay capturing the screenshot.
Useful when the site does things after loading that you want to capture.
Type: number
Default: 0
Specify the with of the browser window
Type: number
Default: 0
Specify the height of the browser window
Type: Object
Default: undefined
An crop object may look like this:
{
x : 10,
y : 10,
width : 100,
height : 100
}
Type: String
Default: undefined
This css will be injected into the page before the screenshot is taken.
Type: String
Default: undefined
It must contain a function definition that takes on parameter e.g.
js: 'function(takeScreenshot){ /*Do some stuff*/ takeScreenshot();}'
or
js: 'takeScreenshot => { /*Do some stuff*/ takeScreenshot();}'
Type: Boolean
Default: false
This will enable transparency. Keep in mind that most site do set a background color on the html/body tag.
You can overwrite this by using the css
option using something like html,body{ background-color: transparent !important;}
.
Type: Boolean
Default: false
This will try to capture the whole page. width
and height
are considered the minimum size.
Will close the screenshot service. Needed to let the node process exit
Scale the number of electron processes to scale
processes. This will round-robin the screenshot
jobs across scale
instances.
- Update to
electron@1.4.5
- Add version to sub-package fixing #33
- Update to
electron@1.4.1
- Update to
electron@1.4.0
- Update to
electron@1.3.4
- Update to
electron@1.3.1
- Fix PORT bug on windows (Thanks to peerbolte)
- Update to
electron@1.2.7
- Fix post install script on windows
- Update to
electron-screenshot-app@3.1.0
- Support
options.js
- Update to
electron@1.2.6
- Fix bug in keeping
browserCount
correct. (Thanks to jerbob92)
- Update to
electron@1.2.5
- Fix bug that prevent running in node
^6.0.0
- Update to
electron@1.2.0
- Use
cross-spawn
insated ofcross-spawn-async
- Update dependencies
- Update to
electron@1.1.0
- Update to
electron-screenshot-app@3.0.0
- Update to
electron@0.37.7
- Update to
electron@0.37.2
- Fix a bug in
count
not being updated when an electron process dies (Thanks to asafyish) - Update to
electron@0.36.8
- Fix installation on windows (#14)
- Upgrade to
electron@0.36.7
. - Update to
electron-screenshot-app@2.2.0
- Upgrade to
electron@0.36.6
. - Update to
electron-screenshot-app@2.1.0
fixing #11
- Upgrade to
electron@0.36.5
. - Fix race-condition in error reporting.
- Add
screenshot.scale
API
- Upgrade to
electron@0.35.2
.
- Upgrade to
electron@0.34.0
.
- Upgrade to
electron@0.33.8
.
- Upgrade to
electron@0.33.4
.
- Upgrade to
electron@0.33.1
.
- Upgrade to
electron@0.33.0
.
- Upgrade to
electron@0.32.2
.
- Upgrade to
electron@0.32.1
.
- Upgrade to
electron@0.31.1
. - Upgrade to
electron-screenshot-app@1.1.0
.
- Upgrade to
electron@0.31.0
.
- Upgrade to
electron@0.30.4
.
- Upgrade to
electron@0.30.2
.
- Upgrade to
electron@0.30.1
. - Extract core functionality into electron-screenshot-app (See #4)
- Upgrade to
electron@0.30.0
.
- Upgrade to
electron@0.28.1
.
- Fixed some issues with error handeling
- Stop
electron
from closing when last window was closed
- Upgrade to
electron@0.27.1
. - Use
electron-downloader
. - Add
transparent
support.
- Upgrade to
electron@0.25.1
- Hide the window again.
- Upgrade to
electron@0.24.0
- Renamed to
electron-screenshot-service
- Upgrade to
atom-shell@0.21.3
- The Promise will no return the image
data
andsize
.
- Fix bug on linux (X11)
- Update to atom-shell
.0.22.7
- Improved perfomance by switching to
axon
for ipc.
- Fix scroll jumping
- Cleanup repository
- Remove duplicated dependency to
socket.io-client
- Update to atom-shell
0.20.6
. - Better handeling of pages with iframes
- Include
jquery
because of a "bug" inatom-shell
(See [#254](See electron/electron#254)) - Better error handeling
- Use
window.requestAnimationFrame
to be sure that at least one paint has happend.
- Force a redraw after injecting css
- Add
css
option to inject custom css
- Update to atom-shell
0.20.5
- Add
close()
method
- Update to atom-shell
0.19.5
- Update to atom-shell
0.15.8
- Update to atom-shell
0.15.4
- 0.1.0 Inital release