Text

TextContent

一般文字內容。文字必須位於頁面中的相容形狀 (例如文字方塊或矩形) 或表格儲存格。

JSON 表示法
{
  "textElements": [
    {
      object (TextElement)
    }
  ],
  "lists": {
    string: {
      object (List)
    },
    ...
  }
}
欄位
textElements[]

object (TextElement)

文字內容會細分為各個元件部分,包括樣式資訊。這個屬性是唯讀。

lists

map (key: string, value: object ( List))

這段文字中包含的項目符號清單,以清單 ID 做為鍵。

TextElement

TextElement 會說明 Shape 或 TableCell 文字內容中某個索引範圍的內容。

JSON 表示法
{
  "startIndex": integer,
  "endIndex": integer,

  // Union field kind can be only one of the following:
  "paragraphMarker": {
    object (ParagraphMarker)
  },
  "textRun": {
    object (TextRun)
  },
  "autoText": {
    object (AutoText)
  }
  // End of list of possible types for union field kind.
}
欄位
startIndex

integer

這個文字元素的起始索引 (從零開始),以 Unicode 程式碼單元為單位。

endIndex

integer

這個文字元素的結尾索引 (從零開始),以 Unicode 程式碼單元表示,不含結尾索引。

聯集欄位 kind。這個元素代表的文字類型。 kind 只能是下列其中一項:
paragraphMarker

object (ParagraphMarker)

代表新段落開頭的標記。

這個 TextElement 的 startIndexendIndex 代表段落的範圍。如果其他 TextElement 的索引範圍包含在這個段落的範圍內,就會視為這個段落的一部分。兩個不同段落的索引範圍絕不會重疊。

textRun

object (TextRun)

TextElement,代表執行中的文字,其中所有字元都具有相同的 TextStyle

TextRun 的 startIndexendIndex 一律完全包含在單一 paragraphMarker TextElement 的索引範圍內。換句話說,TextRun 絕不會跨越多個段落。

autoText

object (AutoText)

TextElement 代表文字中的位置,會動態替換為可能隨時間變更的內容。

ParagraphMarker

代表新段落開頭的 TextElement 種類。

JSON 表示法
{
  "style": {
    object (ParagraphStyle)
  },
  "bullet": {
    object (Bullet)
  }
}
欄位
style

object (ParagraphStyle)

段落樣式

bullet

object (Bullet)

這個段落的項目符號。如果沒有,段落就不屬於清單。

ParagraphStyle

套用至整個段落的樣式。

如果這段文字位於含有父項 placeholder 的形狀中,這些段落樣式可能會從父項繼承。繼承的段落樣式取決於清單的巢狀層級:

  • 不在清單中的段落會從父項預留位置內的清單,繼承巢狀層級 0 的段落樣式。
  • 清單中的段落會從父項預留位置內清單中對應巢狀層級的段落,沿用段落樣式。

這個訊息中的未設定欄位代表繼承的段落樣式。

JSON 表示法
{
  "lineSpacing": number,
  "alignment": enum (Alignment),
  "indentStart": {
    object (Dimension)
  },
  "indentEnd": {
    object (Dimension)
  },
  "spaceAbove": {
    object (Dimension)
  },
  "spaceBelow": {
    object (Dimension)
  },
  "indentFirstLine": {
    object (Dimension)
  },
  "direction": enum (TextDirection),
  "spacingMode": enum (SpacingMode)
}
欄位
lineSpacing

number

行間距,以正常值的百分比表示,正常值為 100.0。如未設定,系統會沿用父項的值。

alignment

enum (Alignment)

這個段落的文字對齊方式。

indentStart

object (Dimension)

根據目前的文字方向,在與文字開頭對應的側邊,段落的縮排量。如未設定,系統會沿用父項的值。

indentEnd

object (Dimension)

根據目前的文字方向,在與文字結尾對應的側邊,設定段落的縮排量。如未設定,系統會沿用父項的值。

spaceAbove

object (Dimension)

段落上方的額外空間量。如未設定,系統會沿用父項的值。

spaceBelow

object (Dimension)

段落下方額外間距的大小。如未設定,系統會沿用父項的值。

indentFirstLine

object (Dimension)

段落首行開頭的縮排量。如未設定,系統會沿用父項的值。

direction

enum (TextDirection)

這個段落的文字方向。如未設定,值會預設為 LEFT_TO_RIGHT ,因為系統不會沿用文字方向。

spacingMode

enum (SpacingMode)

段落的間距模式。

對齊方式

段落的文字對齊類型。

列舉
ALIGNMENT_UNSPECIFIED 段落對齊方式會繼承父項設定。
START 段落會與行首對齊。如果是從左到右的文字,則靠左對齊;否則靠右對齊。
CENTER 段落置中。
END 段落會與行尾對齊,如果是從左到右的文字,則靠右對齊;否則靠左對齊。
JUSTIFIED 段落已對齊。

TextDirection

路線文字可以流動。

列舉
TEXT_DIRECTION_UNSPECIFIED 文字方向會沿用自父項設定。
LEFT_TO_RIGHT 文字從左到右。
RIGHT_TO_LEFT 文字從右向左排列。

SpacingMode

段落間距的不同模式。

列舉
SPACING_MODE_UNSPECIFIED 間距模式會繼承自父項。
NEVER_COLLAPSE 系統一律會算繪段落間距。
COLLAPSE_LISTS 清單元素之間會略過段落間距。

子彈

描述段落的項目符號。

JSON 表示法
{
  "listId": string,
  "nestingLevel": integer,
  "glyph": string,
  "bulletStyle": {
    object (TextStyle)
  }
}
欄位
listId

string

這個段落所屬清單的 ID。

nestingLevel

integer

這個段落在清單中的巢狀層級。

glyph

string

這個段落的已算繪項目符號字元。

bulletStyle

object (TextStyle)

套用至這個項目符號的段落專屬文字樣式。

TextStyle

代表可套用至 TextRun 的樣式。

如果這段文字包含在具有父項 placeholder 的形狀中,這些文字樣式可能會從父項繼承。繼承的文字樣式取決於清單的巢狀層級:

  • 段落中不在清單內的文字執行會從父項預留位置內的清單,在清單的 0 巢狀層級中,從段落的換行字元繼承文字樣式。
  • 清單中段落的文字執行個體會從父項預留位置內清單相應巢狀層級的段落換行字元,沿用文字樣式。

這個訊息中的未設定欄位代表繼承的文字樣式。如果形狀含有文字,但沒有父項預留位置,取消設定這些欄位會將樣式還原為 Google 簡報編輯器中的預設值。

JSON 表示法
{
  "backgroundColor": {
    object (OptionalColor)
  },
  "foregroundColor": {
    object (OptionalColor)
  },
  "bold": boolean,
  "italic": boolean,
  "fontFamily": string,
  "fontSize": {
    object (Dimension)
  },
  "link": {
    object (Link)
  },
  "baselineOffset": enum (BaselineOffset),
  "smallCaps": boolean,
  "strikethrough": boolean,
  "underline": boolean,
  "weightedFontFamily": {
    object (WeightedFontFamily)
  }
}
欄位
backgroundColor

object (OptionalColor)

文字的背景顏色。如果已設定,顏色會是不透明或透明,視其中的 opaqueColor 欄位是否已設定而定。

foregroundColor

object (OptionalColor)

文字本身的顏色。如果已設定,顏色會是不透明或透明,視其中的 opaqueColor 欄位是否已設定而定。

bold

boolean

文字是否以粗體顯示。

italic

boolean

文字是否為斜體。

fontFamily

string

文字的字型系列。

字型系列可以是 Google 簡報「字型」選單中的任何字型,也可以是 Google Fonts 中的字型。如果系統無法辨識字型名稱,則會以 Arial 轉譯文字。

部分字型會影響文字的粗細。如果更新要求同時指定 fontFamilybold 的值,系統會使用明確設定的 bold 值。

fontSize

object (Dimension)

文字的字型大小。讀取時, fontSize 會以點為單位指定。

baselineOffset

enum (BaselineOffset)

文字與正常位置的垂直偏移量。

系統會根據 fontSize 欄位計算,自動以較小的字型大小算繪具有 SUPERSCRIPTSUBSCRIPT 基準線位移的文字。fontSize 本身不會受到這個欄位變更的影響。

smallCaps

boolean

文字是否為小型大寫字母。

strikethrough

boolean

文字是否加上刪除線。

underline

boolean

文字是否加上底線。

weightedFontFamily

object (WeightedFontFamily)

文字的字型系列和顯示粗細。

這個欄位是 fontFamily 的擴充功能,旨在支援明確的字型粗細,同時維持回溯相容性。因此,讀取某範圍文字的樣式時,weightedFontFamily#fontFamily 的值一律會等於 fontFamily 的值。不過,在寫入時,如果欄位遮罩中同時包含這兩個欄位 (明確或透過萬用字元 "*"),系統會按照下列方式比對值:

  • 如果設定了 fontFamily,但未設定 weightedFontFamily,系統會套用 fontFamily 的值,並將權重設為 400 (「normal」)。
  • 如果兩個欄位都已設定,fontFamily 的值必須與 weightedFontFamily#fontFamily 的值相符。如果是,系統會套用 weightedFontFamily 的字型系列和粗細。否則,系統會傳回 400 錯誤要求錯誤。
  • 如果已設定 weightedFontFamily,但未設定 fontFamily,系統會套用 weightedFontFamily 的字型系列和粗細。
  • 如果兩個欄位都未設定,文字的字型系列和字體粗細會沿用父項的設定。請注意,這些屬性無法彼此獨立繼承。

如果更新要求同時指定 weightedFontFamilybold 的值,系統會先套用 weightedFontFamily,再套用 bold

如未設定 weightedFontFamily#weight,則預設為 400

如果設定 weightedFontFamily,則 weightedFontFamily#fontFamily 也必須設定為非空白值。否則,系統會傳回 400 錯誤要求錯誤。

OptionalColor

可完全不透明或完全透明的顏色。

JSON 表示法
{
  "opaqueColor": {
    object (OpaqueColor)
  }
}
欄位
opaqueColor

object (OpaqueColor)

如果設定這個值,系統會將其做為不透明的顏色。如未設定,則代表透明色。

BaselineOffset

文字可從正常位置垂直偏移的方式。

列舉
BASELINE_OFFSET_UNSPECIFIED 文字的基準線偏移量會沿用父項設定。
NONE 文字不會垂直偏移。
SUPERSCRIPT 文字會向上垂直偏移 (上標)。
SUBSCRIPT 文字會向下垂直偏移 (下標)。

WeightedFontFamily

代表用於設定 TextRun 樣式的字型系列和粗細。

JSON 表示法
{
  "fontFamily": string,
  "weight": integer
}
欄位
fontFamily

string

文字的字型系列。

字型系列可以是 Google 簡報「字型」選單中的任何字型,也可以是 Google Fonts 中的字型。如果系統無法辨識字型名稱,則會以 Arial 轉譯文字。

weight

integer

文字的顯示粗細。這個欄位的值可以是 100 的倍數,且介於 100900 之間 (含頭尾)。這個範圍對應至 CSS 2.1 規格第 15.6 節中說明的數值,且不允許非數值。大於或等於 700 的權重會視為粗體,小於 700 的權重則不會。預設值為 400 (「normal」)。

TextRun

代表具有相同樣式的一段文字的 TextElement 種類。

JSON 表示法
{
  "content": string,
  "style": {
    object (TextStyle)
  }
}
欄位
content

string

這個執行作業的文字。

style

object (TextStyle)

套用至這個執行項目的樣式。

AutoText

代表自動文字的 TextElement 種類。

JSON 表示法
{
  "type": enum (Type),
  "content": string,
  "style": {
    object (TextStyle)
  }
}
欄位
type

enum (Type)

這項自動文字的類型。

content

string

這個自動文字的顯示內容 (如有)。

style

object (TextStyle)

套用至這段自動文字的樣式。

類型

自動文字類型

列舉
TYPE_UNSPECIFIED 未指定的自動文字類型。
SLIDE_NUMBER 輸入代表目前投影片編號的自動文字。

List

清單會說明與清單相關聯的段落子彈外觀和風格。清單中的段落會隱含參照該清單的 ID。

JSON 表示法
{
  "listId": string,
  "nestingLevel": {
    integer: {
      object (NestingLevel)
    },
    ...
  }
}
欄位
listId

string

清單的 ID。

nestingLevel

map (key: integer, value: object ( NestingLevel))

巢狀層級的地圖,對應至相關層級的項目符號屬性。清單最多有九層巢狀結構,因此這項對應的鍵可能值為 0 到 8 (含首尾)。

NestingLevel

內含屬性,說明特定巢狀層級的清單項目符號外觀。

JSON 表示法
{
  "bulletStyle": {
    object (TextStyle)
  }
}
欄位
bulletStyle

object (TextStyle)

這個巢狀層級的項目符號樣式。