調整網頁元素大小和位置

本指南說明如何使用自訂元素調整頁面元素的大小和位置 轉換。有關偽轉換的概念簡介 請參閱轉換概念指南。

轉換元素

Slides API 可讓您重新調整頁面上元素的位置和大小。方法如下 請先決定要套用的轉換類型 然後使用 presentations.batchUpdate 方法,其中包含 UpdatePageElementTransformRequest 元素。

變形效果可以是其中一種: applyModes:

  • ABSOLUTE 轉換會取代元素現有的轉換 矩陣您在轉換更新要求中省略的任何參數,都會設為 零時差弱點

  • RELATIVE 轉換會乘以元素現有的值 轉換矩陣 (乘法的順序很重要):

$$A' = BA$$

相對轉換會移動或縮放網頁元素從目前的位置; 例如將形狀向左移動 100 點,或將形狀旋轉 40 度。 絕對轉換會捨棄現有位置和比例資訊。的 例如將形狀移至頁面中央,或是將形狀縮放為 指定寬度

複雜的轉換通常可以用一系列較簡單的轉換表示。 預先計算轉換:使用 矩陣乘法 — 通常可以減輕負擔。

進行某些作業時,您必須知道元素現有的轉換 參數。如果沒有這些值,您可以使用 presentations.pages.get 請求。

翻譯

翻譯指的是將網頁元素移到 不必使用同一個頁面「絕對」Absolute翻譯會將元素移至特定點 「相對」翻譯則會將元素移動到特定距離。

基本轉譯轉換矩陣的格式如下:

$$T=\begin{bmatrix} 1 & 0 & translate\_x\\ 0 & 1 & translate\_y\\ 0 & 0 & 1 \end{bmatrix}$$

使用 UpdatePageElementTransformRequest 時 來翻譯元素 (不會變更其大小、比例或方向) 可使用下列任一項 AffineTransform 結構:

// Absolute translation:
{
  'transform': {
    'scaleX':  current scaleX value,
    'scaleY':  current scaleY value,
    'shearX':  current shearX value,
    'shearY':  current shearY value,
    'translateX': X coordinate to move to,
    'translateY': Y coordinate to move to,
    'unit': 'EMU' // or 'PT'
  }
}

// Relative translation (scaling must also be provided to avoid a matrix multiplication error):
{
  'transform': {
    'scaleX':  1,
    'scaleY':  1,
    'translateX': X coordinate to move by,
    'translateY': Y coordinate to move by,
    'unit': 'EMU' // or 'PT'
  }
}

資源調度

縮放是指沿著 X 和/或沿 X 元素伸展或擠壓元素的動作 要變更大小。基本縮放轉換矩陣的格式如下:

$$S=\begin{bmatrix} scale\_x & 0 & 0\\ 0 & scale\_y & 0\\ 0 & 0 & 1 \end{bmatrix}$$

您可以直接使用此矩陣表單做為 RELATIVE 轉換,以調整 元素,但這也會影響元素的轉譯剪影和轉譯。 如要在不影響主要版面或翻譯的情況下縮放元素,請切換至 參考影格

旋轉

旋轉轉換功能會使用縮放和 大量參數基本旋轉轉換矩陣的格式如下: 從 X 軸測量旋轉角度 (以弧度為單位), 逆時針:

$$R=\begin{bmatrix} cos(\theta) & sin(\theta) & 0\\ -sin(\theta) & cos(\theta) & 0\\ 0 & 0 & 1 \end{bmatrix}$$

與縮放一樣,您可以直接使用此矩陣表單,做為 RELATIVE 但這會導致元素旋轉 關於網頁來源的資訊。如要旋轉元素中心點, 不同的重點

反思時間

映射的作用是對應特定線條或軸的元素。基本 X 軸和 Y 軸反射轉換矩陣具有下列形式:

$$F_x=\begin{bmatrix} 1 & 0 & 0\\ 0 & -1 & 0\\ 0 & 0 & 1\\ \end{bmatrix}\qquad\qquad F_y=\begin{bmatrix} -1 & 0 & 0\\ 0 & 1 & 0\\ 0 & 0 & 1\\ \end{bmatrix}$$

與縮放一樣,您可以直接使用此矩陣表單,做為 RELATIVE 但這會導致元素轉譯為 如要在沒有翻譯的情況下反映元素 轉移至參考影格

元素參照框架

套用基本量表反射rotation 直接轉換為頁面 元素在網頁參考框架中產生轉換。例如: 基本旋轉角度則會旋轉網頁起點 ( )。不過,您可以在 元素本身,例如讓元素繞著中心點旋轉。

如要在其參照頁框中轉換元素,請在元素之間加上轉換 其他翻譯:前一個轉譯 T1,會移動元素中心 元素之間,且後續的翻譯T2會移動元素 回到原本位置。完整運算可用矩陣表示。 產品:

$$A' = T2 \times B \times T1 \times A$$

翻譯不同點也可以切換至其他參考畫面 改為來源。這些點會成為新參照的核心 相框。

您或許可以個別執行這些轉換作業 連續 RELATIVE 轉換要求。在理想情況下 上述 A' 使用矩陣乘法,然後將結果視為單個 ABSOLUTE 轉換。或者,您也可以預先計算 T2 * B * T1 產品 並將其套用為單一 RELATIVE 轉換它們的效率更高 ,然後個別傳送轉換要求。

限制

部分大小和定位欄位與某些類型的頁面不相容 元素。下表摘要列出特定網頁元素與「尺寸」和「位置」欄位的相容性。

欄位 圖案 影片 資料表
翻譯
擴充規模 否**
耳朵

** 如要更新表格列維度和欄維度,請使用 UpdateTableRowPropertiesRequestUpdateTableColumnPropertiesRequest

如果網頁元素有變色,所有大小和定位欄位都可能會產生非預期的結果。所有限制都可能會變動。如需最新資訊,請參閱 Google Slides API

Slides API 可能會重構您的值

建立頁面元素時,您可以指定相關大小和轉換 或提供特定影像搜尋結果不過,API 可能會取代您提供的 其他會產生相同視覺外觀的值一般來說 您透過 API 寫入大小時,不保證傳回的值 大小不過,如果採用 讓他們使用服務帳戶