如何截取大于屏幕的窗口的屏幕截图

如何截取大于屏幕的窗口的屏幕截图

我想要截取大于屏幕尺寸的窗口的屏幕截图。

如果我缩小窗口并截取屏幕截图,则会损失质量,因为放大图像不起作用。

大型显示器可以帮我解决这个问题,但我没有。

我正在使用 Jing,但它只允许我拍摄屏幕上可见的内容而忽略其余部分。

有没有什么办法可以截取屏幕外的内容?

答案1

我相信截图捕捉器就是您要找的工具。不过,它需要一点学习时间,而且滚动窗口捕获功能乍一看可能有点吓人。

它可以捕获对象,即带有滚动条(水平和垂直)的窗口内的内容、单独的程序控件等。

它非常强大,但可能需要对设置进行一些调整才能得到你想要的东西,因此,学习曲线。

如果你尝试了这个程序,但它不适合你,在你放弃它之前,先看看视频列于本页, 尤其这是关于基本滚动窗口捕获的

以下是滚动的 Windows 资源管理器窗口的捕获示例(单击可查看完整尺寸): 滚动窗口捕获

答案2

在 Linux 中,该xrandr命令只是创建一个更大的虚拟屏幕,例如:

xrandr --output HDMI-1 --rate 60 --mode 1920x1200 --panning 3000x2000

然后以正常方式截取屏幕截图,该屏幕截图将以选项指定的大小捕获整个虚拟屏幕--panning。它还会捕获可见物理显示器区域之外的区域。

答案3

  1. 我必须测试软件在比我拥有的更大的显示器上的运行/显示情况,而且我已经做到了在 VMWare Workstation 虚拟机中。我刚刚去了VM 设置展示,并在那里写下分辨率。使用虚拟化软件很容易截取屏幕截图(Ctrl++ ,它们AltPrtScr自动保存到主机的桌面)。虽然我从未尝试过将分辨率提高到 6000×4000直到今天:-)

VMWare Workstation 10 上的 WinXP,分辨率为 6000×4000
(来源:mundoplus.tv

  1. 虽然这涵盖了一般情况,PDF 文件的情况要简单得多有一个非常有用(而且免费!)的 PDF 渲染器,叫做多媒体PDF你可以直接运行

    mudraw -o page%d.png -r 300 document.pdf 5-9
    

几乎立即获得第 5 至第 9 页document.pdf(名为page5.png,,page6.png...,page9.png)的 300 dpi PNG

  1. 最后一件事:有人提到了截屏Firefox 中的整个网页? 无需扩展!只需按Shift+F2并写入

    screenshot webcap.png --fullpage
    

答案4

好消息:有一种方法可以捕获完整的 pdf。
坏消息:有点冗长,而且 pdf可能结果不是 100% 正确!
(总比没有好,对吧?)

因此,为了使这一切正常工作,您需要执行以下操作:

  1. 从以下位置获取 NodeJS 版本这里并安装它
  2. A。如果你已经安装了,只需从下面路径git克隆repo并进入目录mozilla/pdf.jsgithub
    git clone git://github.com/mozilla/pdf.js.git pdfjscd
    b。如果你没有,git那么你需要从这里下载整个代码库:https://github.com/mozilla/pdf.js/archive/master.zip
    解压它,然后打开command promptcd进入文件夹的根目录
  3. 跑步node make server

到目前为止,您所做的就是创建一个运行的 Web 服务器,localhost:8888该服务器能够使用 呈现 PDF JavaScript。您可以通过以下页面查看示例 PDF:http://localhost:8888/web/viewer.html?file=/examples/learning/helloworld.pdf

接下来您需要下载 PhantomJS。

  1. 从中获取这里
  2. 将其解压到你喜欢的任何位置,然后从命令提示符cd进入bin文件夹
  3. rasterize.js将文件从examples文件夹复制到文件夹phantomjsbin(我知道这有点脏,但我们可以稍后再处理,对吧?)
  4. 开放起来,rasterize.js因为我们需要改变一些东西。
  5. 转到行45并将时间从 更改200为类似于的内容5000。代码应如下所示:https://gist.github.com/HaykoKoryun/eba33f2011d3d69b773b
  6. pdf将要捕获的文件副本放入根文件夹test中名为pdfjs
  7. 最后运行以下命令
    phantomjs.exe rasterize.js http://localhost:8888/web/viewer.html?file=/test/xxx.pdf test.png 1920px*1080px

你说的那些参数是什么?第一个参数告诉phantomjs运行哪个脚本。这很简单,在我们的例子中,它是修改后的版本rasterize.js

第二个是要加载的 URL,即运行的本地 Web 服务器pdfjs。请注意,您需要将替换xxx为文件的名称pdf

第三个参数是保存捕获内容的文件的名称和格式。

最后,最后一个参数是捕获的大小。您需要调整大小以确保捕获整个页面。

相关内容