このガイドでは、アフィンを使用してページ要素のサイズと配置を行う方法について説明します 学びますアフィン変換の概念については 変換のコンセプト ガイドをご覧ください。
要素の変換
スライド API を使用すると、ページ上の要素の位置やサイズを変更できます。そのためには、 適用する変換の種類を決定してから 使用して、 presentations.batchUpdate メソッドに 1 つ以上 UpdatePageElementTransformRequest あります。
変換は、次の 2 つのいずれかで実行できます。 applyModes:
ABSOLUTE
変換は、要素の既存の変換を置き換えます。 表します。変換更新リクエストから省略したパラメータは、 あります。RELATIVE
変換は、要素の既存の値と乗算されます。 (乗算の順序が重要)
相対変換は、ページ要素を現在の場所から移動またはスケーリングします。 たとえば、シェイプを左に 100 ポイント移動したり、40 度回転したりします。 絶対変換は、既存の位置とスケールの情報を破棄します。 たとえば、シェイプをページの中央に移動したり、 指定します。
通常、複雑な変換は単純な変換のシーケンスとして表現できます。 変換の事前計算( オーバーヘッドを削減できることがよくあります。
オペレーションによっては、要素の既存の変換が何であるかを知っておく必要がある 定義できます。これらの値がない場合は、次のコマンドで取得できます。 presentations.pages.get リクエストできます。
翻訳
翻訳とは、単にページ要素を画面上の新しい位置に移動させること 表示されます。Absolute翻訳では要素を特定のポイントに移動します。 相対的翻訳では要素を特定の距離だけ移動します。
基本的な翻訳変換行列の形式は次のとおりです。
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 軸に沿って要素を伸縮させたり、 サイズを変更します。基本的なスケーリング変換行列の形式は次のとおりです。
この行列形式を、サイズを変更するための RELATIVE
変換として直接使用できます。
これは要素のレンダリングされた傾斜と移動にも影響します。
傾斜や移動に影響を与えずに要素を拡大縮小するには、
参照フレーム。
回転
回転変換では、スケーリングと せん断パラメータ。基本的な回転変換行列の形式は次のとおりです。 回転角(ラジアン)は X 軸を基準として測定され、 反時計回り:
スケーリングと同様に、この行列形式を RELATIVE
として直接使用できます。
要素が回転しますが、その場合、要素が回転します。
ページのオリジンに関する情報。中心または
異なる点です。
その基準フレームにシフトします。
リフレクション
鏡像は、特定の線または軸に沿って要素をミラーリングします。基本 x 軸と y 軸の反射変換行列の形式は次のとおりです。
スケーリングと同様に、この行列形式を RELATIVE
として直接使用できます。
要素は移動しますが 要素は平行移動になります
あります翻訳せずに要素を反映するには、
シフトします。
要素の基準フレーム
基本的な尺度を適用する リフレクション rotation 変換をページに直接変換する 要素がページの参照フレームで変換を生成します。たとえば 基本回転では、要素がページの原点( )。ただし、Terraform の参照フレームで操作は たとえば、中心点を中心にして要素を回転させる場合などです。
要素を自身の参照フレーム内で変換するには、2 つのフレームで囲みます
その他の翻訳: 要素の中心を移動する前の翻訳 T1
ページのオリジンに移動し、次の翻訳 T2
で要素を移動します。
元の位置に戻せます完全な演算は行列として表現できる
product:
異なる点を変換して、他の基準系に切り替えることもできます オリジンにルーティングしますこれらのポイントが、新しいリファレンス クリックします。
これらの変換は、それぞれ個別に
連続した RELATIVE
変換リクエスト。事前にコンピューティング能力を
A'
(上記の行列を乗算して)に変換し、結果を単一の
ABSOLUTE
変換。または、T2 * B * T1
の積を事前に計算する
それを単一の RELATIVE
変換として適用します。どちらも効率的です
変換リクエストを個別に送信できます
制限事項
一部のサイズフィールドと配置フィールドは、一部のタイプのページに対応していません あります。次の表は、特定のページ要素とサイズフィールドと配置フィールドの互換性をまとめたものです。
フィールド | 図形 | 動画 | 表 |
---|---|---|---|
翻訳 | ✔ | ✔ | ✔ |
スケーリング | ✔ | ✔ | ×** |
シェア | ✔ | いいえ | いいえ |
** 表の行と列のディメンションを更新するには、
UpdateTableRowPropertiesRequest
および
UpdateTableColumnPropertiesRequest
。
ページ要素に傾斜がある場合、すべてのサイズ設定と配置フィールドで予期しない結果が生じる可能性があります。すべての制限は変更される場合があります。最新の情報については、Google スライド API をご覧ください。
スライド API は値をリファクタリングする場合があります。
ページ要素を作成する際は、ページ要素のサイズと変換を 結果を提示します。ただし、API は提供された 値を比較することで、見た目は同じになる場合があります。一般的に API を使用してサイズを記述した場合、同じ値が返される保証はありません。 指定します。ただし、この変換を あります。