Documentation

スクロールキャプチャ

縦に長いウェブページ、長いソースコードファイル、または高さのあるドキュメントをキャプチャします。スクロールに合わせて、Snapzyがフレームを自動的に結合します。

使い方

複数のスクリーンショットを撮影して手動で結合する代わりに、スクロールキャプチャ機能がその作業を自動で行います。スクロール可能な領域を選択し、一定の速度でスクロールするだけで、Snapzyが各フレームを結合処理します。

https://snapzy.app/docs/scrolling
📌 Sticky Header (Notice: We exclude this from crop selection box below)
CROP SELECTION
Premium Graphics Card
Stitch algorithm matches image patterns
--- End of scrollable webpage content ---

Stitch PreviewLive

Stitch Confidence:96.0%
  1. ショートカットキー ⇧⌘6 または URL snapzy://capture/scrolling を使用してキャプチャを起動します。
  2. スクロールするコンテンツ領域のみを覆うように選択枠をドラッグします。固定ヘッダー、サイドバー、フッターなどは結合処理の妨げになるため、選択範囲に入れないようにしてください。
  3. HUD上の 「Start」 を押します。
  4. ゆっくりと一定の速度で下に向かってスクロールします。結合された画像が伸びていく様子が、オーバーレイ内のリアルタイムプレビューに表示されます。
  5. 「Done」 をクリックするか、Enter キーを押して保存します。

自動スクロール (Auto Scroll)

完全に自動化されたキャプチャ体験を提供するため、SnapzyにはmacOSのアクセシビリティAPI(Accessibility APIs)を利用した**自動スクロール (Auto Scroll)**機能が搭載されています。

動作の仕組み

  1. 選択範囲を確定して 「Start」 をクリックすると、HUD上に 「Auto Scroll」 ボタンが表示されます。
  2. 「Auto Scroll」 をクリックすると開始します。Snapzyが自動的かつ正確なスクロールイベントを送信し、コンテンツをスクロールします。
  3. ポインターガード (Pointer Guard): スクロールを正しく制御するため、マウスカーソルは選択したキャプチャ領域内に置く必要があります。カーソルを選択範囲外に移動させた場合:
    • 自動スクロールは一時停止します。
    • 警告HUDが表示され、「選択範囲内にマウスを戻してください」 と促されます。
    • カーソルを選択範囲内に戻すと、自動的にキャプチャが再開されます。
  4. 自動完了: ページの最下部に達したか、または高さ制限に達したことをSnapzyが検出すると、自動的に結合処理を完了して保存します。
  5. 安全停止: ポップアップの表示やレイアウトの乱れなどにより、連続して結合の配置合わせに失敗した場合、自動スクロールは自動的に停止し、手動でキャプチャを完了できるようになります。

[!IMPORTANT] 自動スクロール機能は合成スクロールイベントを発生させるため、SnapzyにはmacOSシステム設定でのアクセシビリティ権限が必要です。権限が不足している場合は、権限の付与を求める画面が表示されます。

技術解説: 結合の仕組み

Snapzyは、複雑なレイアウトでも正確な結果を得るために、ハイブリッドキャプチャパイプラインを使用しています:

  • ストリームフレームリング — 選択された領域を高フレームレートでキャプチャし、リングバッファ(ScrollingCaptureFrameRing)に保持します。
  • フォールバック静止フレーム — スクロールストリームで遅延が発生したりフレーム落ちが発生したりした場合、結合の隙間を防ぐために、Snapzyは即座にフォールバック用の静止キャプチャをトリガーします。
  • Visionを活用した結合 — ローカルのVisionアルゴリズムが重複するセクションを比較し、一致箇所を特定し、信頼度しきい値をチェックして、冗長なフレームを無視します。
  • 安全確認 — スクロール速度が速すぎる場合や逆方向にスクロールした場合、結合処理が一時停止し、警告HUDが表示されます。これにより、キャプチャをやり直すことなくスクロール速度を調整できます。

きれいにキャプチャするためのベストプラクティス

1. 選択範囲を限定する

スクロールしないヘッダー、固定ナビゲーションバー、または固定配置されたサイドウィジェットを除外します。結合処理は、選択されたブロック全体が均一にスクロールされることを想定しています。

2. スムーズにスクロールする

マウスホイールまたはトラックパッドを使用して、滑らかな動きで下にスクロールします。セクションを急激にジャンプさせないでください。

3. ホバー要素を避ける

スクロール中は、マウスクリック時のホバーカードの影やツールチップのアニメーションが重なり検出を損なわないよう、選択領域内にマウスカーソルを置かないようにしてください。

診断とログ

問題(結合エラーやテキストのずれなど)が発生した場合は、Snapzyの診断ログを確認できます:

スクロールキャプチャは、タイミングデータ、フレームリング統計、およびVision信頼度レベルをローカルのログファイルに記録します:

~/Library/Logs/Snapzy/snapzy_YYYY-MM-DD.txt

ターミナルを使用して、ログからスクロールデバッグに関する記述を抽出できます:

grep 'ScrollingCaptureDebug' "$HOME/Library/Logs/Snapzy/snapzy_$(date +%F).txt"

最高の作品を
キャプチャする準備はできましたか?

macOS向け最高の画面キャプチャツールを作るオープンソースコミュニティに参加してください。

macOS 13+ · Intel & Apple Silicon