简介
scrshot 是一个可用于在网页中截图的 npm 包。使用它,你可以在你的 Node.js 应用程序中使用 JavaScript API 的方式来截取元素、视口、HTML 文档和整个页面。
除了基本的截图功能外,它还提供了一系列可选的配置选项,例如设置页面格式、设置截图缩放比例等等。
安装
要安装 scrshot,只需要在你的项目根目录中运行以下命令:
npm install scrshot --save
使用
使用 scrshot 截图有两种方式:使用 JavaScript API 或者使用 CLI。
JavaScript API
以下是基本的步骤,使用 JavaScript API 来截取屏幕截图:
- 引入 scrshot:
const scrshot = require('scrshot');
- 调用 scrshot 的 API:
scrshot(options) .then((result) => { // do something with result }) .catch((error) => { // handle error });
options 是一个对象,包含以下属性:
type
:可选参数,指定截图的格式(如 "png"、"jpeg" 等)。默认为 "png"。path
:可选参数,指定截图的保存路径和文件名。默认为当前目录下的一个随机名称。quality
:可选参数,指定截图的质量(仅对 jpeg 有效)。默认为 100。fullPage
:可选参数,设置为 true,将截取整个页面而不只是可视部分(页面滚动)。默认为 false。clip
:可选参数,指定要截取的元素的部分。它需要一个包含以下属性的对象:
{ x: Number, y: Number, width: Number, height: Number }
clip 中的 x、y、width 和 height 属性分别表示要截取的元素的左上角坐标、宽度和高度。不指定 clip 时,默认截取整个页面。
以下是一个截图 Facebook Logo 的样例:
-- -------------------- ---- ------- ----- ------- - ------------------- --------- ----- -------------------- ----- - -- ---- -- ---- ------ ---- ------- --- - ---------- -- - ----------------------- --------- ---
CLI
你还可以使用 scrshot 的 CLI 来截图。
在终端中,使用以下命令启动 scrshot:
npx scrshot <url> [options]
url 参数指定要截取的页面的 URL。
options 中包含以下选项(这些选项与 JavaScript API 中的相同):
--type
:指定输出的图片格式。--path
:指定输出图片的路径,支持绝对路径和相对路径,如果目录不存在则会自动创建。--quality
:指定输出图片的质量。--full-page
:指定是否截取整个页面或者只截取可见部分。--clip-x
、--clip-y
、--clip-width
、--clip-height
:指定要截取的部分。这个选项需要和--no-full-page
选项一同使用。
以下是一个截图百度 Logo 的样例:
npx scrshot https://www.baidu.com --path baidu-logo.png --clip-x 200 --clip-y 50 --clip-width 200 --clip-height 100
总结
使用 scrshot 可以轻松地截图任意页面的某个元素、可视部分、HTML 文档和整个页面。你可以根据你的实际需要来设定选项。如果你已经使用过其他类似的截图工具,那么使用 scrshot 应该很容易上手。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60055e7b81e8991b448dbd6b