← 全部示例

操作 媒体

截取当前视频帧

工具栏操作:将正在播放视频的当前帧保存为 PNG 文件。

可复制的代码

// Toolbar action: capture the current frame of the playing video.
(function () {
  var videos = Array.prototype.slice.call(document.querySelectorAll('video'));
  videos.sort(function (a, b) {
    return (b.clientWidth * b.clientHeight) - (a.clientWidth * a.clientHeight);
  });
  var v = videos[0];
  if (!v || !v.videoWidth) { alert('No playable video found.'); return; }
  try {
    var c = document.createElement('canvas');
    c.width = v.videoWidth;
    c.height = v.videoHeight;
    c.getContext('2d').drawImage(v, 0, 0, c.width, c.height);
    var a = document.createElement('a');
    a.href = c.toDataURL('image/png');
    a.download = 'video-frame-' + Math.round(v.currentTime) + 's.png';
    document.body.appendChild(a);
    a.click();
    a.remove();
  } catch (e) {
    alert('Could not capture this frame: ' + e.message);
  }
})();

如何使用此示例

  1. 用上方按钮复制代码。
  2. 安装 JustZix(2 分钟),在目标页面打开扩展。
  3. 添加一条匹配该页面的新规则。
  4. 启用操作面板,在「操作」选项卡中添加按钮并粘贴代码 — 一键运行。

为此示例评分

暂无评分 — 成为第一个。

此示例有效吗?

没有可粘贴的地方,代码片段毫无用处。

JustZix 安装只需 2 分钟,并在每个匹配的页面上运行你的代码。无需账户、无需付费。

免费下载 查看应用场景