How to take a screenshot of a window larger than the screen
Andrew Mclaughlin
I want to take a screen shot of a window that's larger than the screen size.
If I zoom out of the window and I take the screenshot, I lose quality since zooming into the image will not work.
A large monitor would help me with this but I don't have one.
I'm using Jing, but it only allows me to take a picture of what's visible on the screen and ignores the rest.
Is there any way to take screenshots of what is outside the screen?
312 Answers
I believe Screenshot Captor is the tool you're looking for. It involves a slight learning curve though and the scrolling window capture feature might seem intimidating at first.
It can capture objects, meaning content within windows with scroll bars (horizontal and vertical), individual program controls, etc.
It is quite powerful but some tweaking with the settings may be necessary to get what you want and hence, the learning curve.
If you try the program and it doesn't work for you, before you dismiss it, watch the videos listed on this page, especially this one about basic scrolling window capture.
Here's an example capture of a scrolling Windows Explorer window (click to view full size):
I've had to test how software works/looks in displays larger than the one I have, and I've done it in a virtual machine with VMWare Workstation. I just went to VM settings, Display, and wrote there the resolution. It's easy to take screenshot with the virtualization software (Ctrl+Alt+PrtScr, and they get auto-saved to the host's desktop). Although I've never tried to go up to 6000×4000 until today :-)
While that covers the general case, the case of PDF files is much, much easier. There's a terribly useful (and free!) PDF renderer called MuPDF where you can just run
mudraw -o page%d.png -r 300 document.pdf 5-9to get almost instantly 300-dpi PNGs of pages 5 through 9 of
document.pdf(namedpage5.png,page6.png, ...,page9.png)One last thing: Someone mentioned screengrabbing whole webpages in Firefox? No extensions necessary! Just press Shift+F2 and write
screenshot webcap.png --fullpage
With Linux, the xrandr command simply creates a larger virtual screen, for example:
xrandr --output HDMI-1 --rate 60 --mode 1920x1200 --panning 3000x2000Then take a screenshot in the normal way, which captures the whole virtual screen
in that size as specified by the --panning option. It does also capture those areas which are outside the visible physical monitor area.
There is nothing "beyond the screen", mostly because applications will not draw it.
Your best bet is to pan around the image, and use Photoshop (or your favorite image editor) to stitch the pieces together.
That's how it is in Windows at least; you don't say what "window" you have, and how you can "zoom out".
But if i was, for example, trying to steal images of Google Maps i would
- pan around
- save the small bits
- stitch them together in Photoshop
The good news: there's a way to capture your pdf in it's entirety.
The bad news: its a bit long winded and the pdf might not come out 100% correct!
(It's better than nothing right?)
So, to get this all working you will need to do the following:
- Grab a version of NodeJS from here and install it
- a. If you have
gitinstalled just clone themozilla/pdf.jsrepo fromgithublike sogit clone git:// pdfjsandcdinto the directory
b. if you don't havegitthen you'll need to download the whole code repository from here:
unzip it and then open upcommand promptandcdinto the root of the folder - run
node make server
What you have done so far is create a web server running on localhost:8888 that is able to render pdfs using JavaScript. You can view an example pdf by going to the following page:
Next up you'll need to download PhantomJS.
- Grab it from here
- Unzip it wherever you like and then from the command prompt
cdinto thebinfolder - Copy the
rasterize.jsfile from theexamplesfolder ofphantomjsinto thebinfolder (I know it's a bit dirty but we can sort it out later right?) - Open up
rasterize.jsbecause we need to change something. - Go to line
45and change the time from200to something like5000for now. The code should look like: - Place a copy of the
pdffile you want to capture into a folder calledtestin thepdfjsroot folder - Finally run the following command
phantomjs.exe rasterize.js test.png 1920px*1080px
What are those parameters I hear you say?
The first one tells phantomjs which script to run. That's easy, in our case it's the modified version of rasterize.js!
The second one is the URL to load, which is the local webserver running pdfjs. Note that you'll need to replace the xxx with the name of your pdf file.
The third parameter is the name and format of the file you will save the capture to.
Finally the last parameter is the size of the capture. You'll need to play about with the size to make sure you capture the whole page.
Its possible to take SS of image going beyond visible portion of screen by using PicPick Software.
Take screenshots of an entire screen, an active window, the scrolling windows and any specific region of your desktop, etc
Customize your own keyboard shortcuts Support multiple monitor environments,
capturing with cursor, auto save and file naming, etcSupport the floating widget Capture Bar which makes it easy for you to take
screenshots.
For long time already I'm using Jing's older brother: SnagIt (it's also from TechSmith)
It captures scrolling windows without problem if they have horizontal and/or vertical scrollbars. So you can capture area 3000x3000px and so on.
The downside is that there are problems with apps like Adobe Reader where scrollbars are missing.
The tool isn't free so it also depends if you can accept paid tool. But the trial is free so you can check whether it works for you.
2I'm actually trying to get something from a pdf file, might be a little rough to merge pieces together
Acrobat Reader actually supports "full page screenshots" via the Snapshot tool:
You can use the Snapshot tool to copy all selected content (text, images, or both) to the clipboard or to another application. Text and images are copied as an image.
Select the Snapshot tool by choosing Edit > Take a Snapshot. Do one of the following:
Click anywhere in the page to capture the entire content displayed on the screen. (Note that this actually captures entire pages, not just the visible area on the screen.)
Drag a rectangle around the text or images, or a combination of both.
Drag a rectangle within an image to copy just a portion of the image.
The Snapshot Tool can be set to use a fixed resolution for the captured image, regardless of your current zoom level.
Look for this setting under Edit > Preferences > General > Use fixed resolution for Snapshot tool images. I use a resolution of 150 DPI.
To take a snapshot of a window that is larger than the screen, you will need to enlarge the screen, since a screenshot cannot contain pixels that have not been painted.
When using the Windows applet Control Panel / Appearance and Personalization / Display / Make it easier to read, only allows to increase the screen DPI, not to reduce it.
Nevertheless, there is a way to reduce the DPI which involves registry editing.
From the article Zane's Blog - LogPixels DPI hack :
Here's a handy tip for those netbook users out there in dire need of more screen estate. You can force a DPI value of lower than 96 by using the Windows registry.
To do so open regedit, navigate to
HKEY_CURRENT_CONFIG\Software\Fonts, itemLogPixels
and change the decimal value from 96 to something lower such as 80. Then log out and back in and you will see the changes.I'm using a value of 80 on my netbook and it is about the most that I will drop it while still keeping things (half) readable. You will notice that it really hinders the readability of fonts as well as having some strange bitmap scaling artifacts, but if you're like me and can adjust to it then the extra screen space gained is well worth it.
You can view a side by side comparison of the my desktop with LogPixels at 80 and at 96 :
Before modifying the registry, export the Fonts branch as backup, and also create a system restore point. It might be a good idea to export the .reg file to the desktop when making these experiments, so be able by a simple double-click to activate it and restore the original sizes.
1Okay, so in spite of Vinayak's excellent answer - Screenshot Captor - which works great, I got curious and checked out all of the screen grab utils at Gizmo's freeware, including the ones mentioned in the comments section. I've checked around 20 in total so far.
I found only three that I used successfully to grab a window overlapping beyond the screen's visible display. I doubt they're as powerful as Screenshot Captor in terms of grabbing windows with scroll bars, but they're smaller and do the job I wanted:
I'm actually trying to get something from a pdf file, might be a little rough to merge pieces together
The Impressive project uses some tools to render PDF pages into pictures. The actual command-line parameters can be extracted from the source code:
MuPDF tool
mudraworpdfdraw:mudraw -o <output_file> -r <resolution_in_DPI> <file.pdf> <pages>pdftoppm -f <first_page> -l <last_page> -r <resolution_in_DPI> \ <file.pdf> <ppm_files_prefix>Ghostscript tool
gsorgswin32c:gs -dBATCH -dNOPAUSE -sDEVICE=tiff24nc -dUseCropBox \ -sOutputFile=<output_file> \ -dFirstPage=<first_page> -dLastPage=<last_page> \ -r<resolution>x<resolution> \ -dTextAlphaBits=<use_4_if_antialias_or_1> \ -dGraphicsAlphaBits=<use_4_if_antialias_or_1> \ <file.pdf>
Alternatively, you can import a single PDF page into either Gimp or Inkscape. Importing into Inkscape has an additional benefit of being able to edit the actual page before exporting to another format.
Finally, if you actually want to extract pictures from a PDF, use pdfimages tool from Xpdf/Poppler:
pdfimages -j <file.pdf> <image_files_prefix> If you need to capture screenshot of a webpage, you can use the Chrome DevTools.
Check this video .
1