tabs.captureVisibleTab()

指定ウィンドウの選択タブの表示領域の画像をエンコードしたデータ URI を作成します。このメソッドを使うには <all_urls> パーミッション が必要です (Chrome の場合、activeTab パーミッション があり、ユーザーが許可の操作を行えば、このメソッドを使うことができます)。

これは、Promise を返す非同期関数です。

構文

var capturing = browser.tabs.captureVisibleTab(
  windowId,               // optional integer
  options                 // optional extensionTypes.ImageDetails
)

引数

windowIdOptional
integer 型。対象となるウィンドウ。デフォルトは現在のウィンドウ。
optionsOptional
extensionTypes.ImageDetails 型。

戻り値

Promise であり、キャプチャーされたタブの表示領域の画像をエンコードしたデータ URL で fulfilled 状態にされる。このデータ URL は、HTML イメージ要素の 'src' 属性に設定することで、画像を表示できる。もし何らかのエラーが発生した場合、Promise はエラーメッセージによって rejected 状態にされる。

使用例

現在のウィンドウの選択されたタブの画像を、デフォルト設定でキャプチャーする。

function onCaptured(imageUri) {
  console.log(imageUri);
}

function onError(error) {
  console.log(`Error: ${error}`);
}

browser.browserAction.onClicked.addListener(function() {
  var capturing = browser.tabs.captureVisibleTab();
  capturing.then(onCaptured, onError);
});

ブラウザー実装状況

Update compatibility data on GitHub
デスクトップモバイル
ChromeEdgeFirefoxOperaSafariAndroid 版 Firefox
captureVisibleTabChrome 完全対応 あり
補足
完全対応 あり
補足
補足 The default file format is 'jpeg'.
Edge 完全対応 15Firefox 完全対応 47Opera 完全対応 あり
補足
完全対応 あり
補足
補足 The default file format is 'jpeg'.
Safari 完全対応 14
補足
完全対応 14
補足
補足 The default file format is 'jpeg'.
補足 <all_urls> permission not required to call this.
Firefox Android 完全対応 54

凡例

完全対応  
完全対応
実装ノートを参照してください。
実装ノートを参照してください。
謝辞

この API は Chromium の chrome.tabs API に基づいています。このドキュメントは tabs.json における Chromium のコードに基づいています。

Microsoft Edge での実装状況は Microsoft Corporation から提供されたものであり、ここでは Creative Commons Attribution 3.0 United States License に従っています。