Class Position

位置

特定の要素を基準とする、ドキュメント内の場所への参照。ユーザーのカーソルは、特に Position として表現されます。スクリプトは、スクリプトを実行しているユーザーのカーソルにのみ、スクリプトがドキュメントにバインドされている場合にのみアクセスできます。

// Insert some text at the cursor position and make it bold.
var cursor = DocumentApp.getActiveDocument().getCursor();
if (cursor) {
  // Attempt to insert text at the cursor position. If the insertion returns null, the cursor's
  // containing element doesn't allow insertions, so show the user an error message.
  var element = cursor.insertText('ಠ‿ಠ');
  if (element) {
    element.setBold(true);
  } else {
    DocumentApp.getUi().alert('Cannot insert text here.');
  }
} else {
  DocumentApp.getUi().alert('Cannot find a cursor.');
}

Methods

メソッド戻り値の型概要
getElement()Elementこの Position を含む要素を取得します。
getOffset()Integerこの Position を含む要素内の相対位置を取得します。
getSurroundingText()TextPosition を直接または子要素のチェーンを介して、Paragraph または ListItem のテキストと書式設定を表す、人工的な Text 要素を作成します。
getSurroundingTextOffset()IntegergetSurroundingText() によって返された Text 要素内の Position のオフセットを取得します。
insertBookmark()Bookmarkこの Position で新しい Bookmark を作成して挿入します。
insertInlineImage(image)InlineImage指定された画像 blob から新しい InlineImage を作成してこの Position に挿入します。
insertText(text)Text指定されたテキストをこの Position に挿入します。

詳細なドキュメント

getElement()

この Position を含む要素を取得します。これは、Text 要素か、Paragraph などのコンテナ要素のいずれかです。いずれの場合も、要素内の相対位置は getOffset() で決定できます。

リターン

Element - この Position オブジェクトが配置されているコンテナまたは Text 要素


getOffset()

この Position を含む要素内の相対位置を取得します。要素が Text 要素の場合、オフセットは Position の前の文字の数(つまり、この Position の後の文字のインデックス)になります。他の要素の場合、オフセットは、同じコンテナ要素内でこの Position の前にある子要素の数(Position の後の子要素のインデックス)になります。

リターン

Integer - Text 要素の場合は、この Position の前の文字の数。その他の要素の場合は、同じコンテナ要素内のこの Position の前に子要素の数。

承認

この方法を使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

getSurroundingText()

Position を直接または子要素のチェーンを介して、Paragraph または ListItem のテキストと書式設定を表す、人工的な Text 要素を作成します。返された Text 要素内の Position のオフセットを特定するには、getSurroundingTextOffset() を使用します。

リターン

Text - Position を直接または子要素のチェーンを介して含む Paragraph または ListItem に対して editAsText() を呼び出した結果に対応する要素。

承認

この方法を使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

getSurroundingTextOffset()

getSurroundingText() によって返された Text 要素内の Position のオフセットを取得します。このオフセットは、Position の前(つまり、この Position の後の文字のインデックス)前の文字数です。

リターン

Integer - Position を直接または子要素のチェーンを介して含む Paragraph または ListItem 内で、この Position の前に表示される文字数

承認

この方法を使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

insertBookmark()

この Position で新しい Bookmark を作成して挿入します。

リターン

Bookmark - 新しいブックマーク

承認

この方法を使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

insertInlineImage(image)

指定された画像 blob から新しい InlineImage を作成してこの Position に挿入します。

パラメータ

名前説明
imageBlobSourceこの Position に挿入する画像データです

リターン

InlineImage - 新しい画像要素。この Position が配置されている要素で画像を挿入できない場合は null

承認

この方法を使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

insertText(text)

指定されたテキストをこの Position に挿入します。このメソッドは、文字列が既存の Text 要素に挿入されている場合でも新しい Text 要素を作成するため、新しい要素のスタイルを簡単に設定できます。

パラメータ

名前説明
textStringこの Position に挿入する文字列

リターン

Text - 新しいテキスト要素。Position が配置されている要素でテキストを挿入できない場合は null

承認

この方法を使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents