Transformationen und Seitenelemente

In diesem Leitfaden werden die bei der Transformation verwendeten Konzepte beschrieben, d. h. Verschieben, Drehen, Skalieren und Scheren) von Seitenelementen, insbesondere zur zugrunde liegenden affine Transformation und zu ihren Vorgängen.

Weitere Informationen zur Verwendung von affinen Transformationen zum Erreichen bestimmter Ergebnisse Weitere Informationen finden Sie im Leitfaden zu Größe und Position von Formen.

Die visuelle Größe und Position eines Seitenelements werden von zwei size und transform ein. Die Größe beschreibt die ideale oder integrierte Größe des Seitenelements, das erstellt wird. Die Transformation gibt eine zweidimensionale affine Transformationsmatrix gibt an, wie ein Objekt in seiner integrierten Größe transformiert wird, um das endgültige visuelle Erscheinungsbild.

Diagramm einer Form, die durch eine affine Transformation gerendert wird

Wenn Sie in der Benutzeroberfläche von Google Präsentationen ein Seitenelement auswählen und seine visuelle Größe ändern mithilfe der Anpassungsziehpunkte aktualisieren Sie diese Transformationsmatrix. Wenn Sie das Element über die Seite verschieben oder drehen, wird auch der Transformationsmatrix.

Verwenden Sie die Benutzeroberfläche von Google Präsentationen für den Einstieg

Die Matrixarithmetik, die Sie zum Transformieren und Ändern der Größe von Seitenelementen verwenden, ist sehr leistungsstark, kann aber anfangs einschüchternd wirken. auf dieser Seite werden diese Berechnungen an. Sie können jedoch die Spezifikation von Transformationen und mithilfe des folgenden Ansatzes:

  1. Seitenelemente über die Benutzeroberfläche von Google Präsentationen erstellen
  2. Positionieren Sie diese Seitenelemente wie gewünscht. Verwenden Sie dabei weiterhin die Benutzeroberfläche von Google Präsentationen.
  3. Die Größe dieser Elemente lesen und sie mithilfe der get-Methode transformieren

Das kann für den Anfang ausreichen: werden im Rest dieses Leitfadens Transformationsberechnungen, mit denen Sie Seitenelemente im Detail bearbeiten können.

Affine Transformationsmatrizen

Zweidimensionale affine Transformationsmatrizen werden häufig von Grafiken zur Steuerung des Maßstabs, der Drehung, der Scherung, der Reflexion und der Verschiebung von Elemente. In der Slides API wird die Transformation eines Seitenelements dargestellt. als 3x3-Matrix:

$$A=\begin{bmatrix} scale\_x & shear\_x & translate\_x\\ shear\_y & scale\_y & translate\_y\\ 0 & 0 & 1 \end{bmatrix}$$

Die in der Transformation verwendeten Parameter sind:

translate_x Die Übersetzungsparameter geben die (X,Y)-Position der des Seitenelements relativ zur oberen linken Ecke des auf der Seite. Sie geben die relative Position mit Einheiten entweder Punkte (pt) oder die englischen metrischen Einheiten (EMU) enthalten.
translate_y
scale_x Mit den Parameter "scale" wird gesteuert, wie groß ein Seitenelement ist, gerendert. Dabei handelt es sich um einheitliche Multiplikationsfaktoren. Beispiel: scale_x 1,5 wird die Breite des Elements um 50 % vergrößert.
scale_y
shear_x Die Scherparameter sind ebenfalls ohne Einheit und steuern die Neigung einer Seite -Elements. Mit den Parametern „Skalierung“ und „Scherung“ lässt sich eine Seite drehen. -Elements.
shear_y

Im Web finden Sie viele Beispiele, wie 2D-Transformationsmatrizen die Darstellung grafischer Objekte.

Die Transformationsmatrix ist relativ zur Gruppe oder Seite, in der die Transformation enthalten ist. -Elements. Wenn Sie z. B. eine Gruppe drehen, die ein Rechteck enthält, transform der Gruppe Die Feldwerte spiegeln die Drehung wider, die transform des Rechtecks hingegen nicht.

Visuelle Größe berechnen

Um die visuelle (gerenderte) Größe eines Seitenelements zu bestimmen, der Größe und der Transformation. Sie können nicht feststellen, zwei Seitenelemente visuell größer ist, wenn man ihre Größeneigenschaften vergleicht: müssen Sie die Grenzen des Elements mithilfe der Transformationsmatrix zuordnen. eine gerenderte Größe zu berechnen.

Punkt kartografieren

Wenn Sie einen bestimmten Punkt mithilfe der Transformationsmatrix zuordnen möchten, konvertieren Sie den Punkt (x, y) in einen Vektor [x, y, 1] um und führe dann eine Matrixmultiplikation durch. Berücksichtigen Sie die Zuordnung eines Punkts p:

\[p' = Ap\]

Daraus ergibt sich Folgendes:

$$\begin{bmatrix} x'\\ y'\\ 1 \end{bmatrix} =\begin{bmatrix} scale\_x & shear\_x & translate\_x\\ shear\_y & scale\_y & translate\_y\\ 0 & 0 & 1 \end{bmatrix} \begin{bmatrix} x\\ y\\ 1 \end{bmatrix}$$

Daher lauten die Koordinaten des neuen Punkts p' wie folgt:

$$x' = (scale\_x \times x) + (shear\_x \times y) + translate\_x\\ y' = (scale\_y \times y) + (shear\_y \times x) + translate\_y$$

Begrenzung berechnen

Ermitteln der gerenderten Größe des Begrenzungsrahmens eines Elements nach einer Transformation die Scheren und Schuppen verwenden, verwenden Sie:

$$width' = (scale\_x \times width) + (shear\_x \times height)\\ height' = (scale\_y \times height) + (shear\_y \times width)$$

Weitere Informationen zur Verwendung von affinen Transformationen zum Erreichen bestimmter Ergebnisse Weitere Informationen finden Sie im Leitfaden zu Größe und Position von Formen.

Beschränkungen

Einige Größen- und Positionierungsfelder sind mit einigen Seitentypen nicht kompatibel. Elemente. In der folgenden Tabelle ist die Kompatibilität bestimmter Seitenelemente mit den Feldern für Größenanpassung und Positionierung zusammengefasst.

Feld Form Video Tabelle
Translation
Scale Nein**
Scherung Nein Nein

** Um die Dimensionen für Tabellenzeilen und -spalten zu aktualisieren, UpdateTableRowPropertiesRequest und UpdateTableColumnPropertiesRequest.

Alle Größen- und Positionsfelder können zu unerwarteten Ergebnissen führen, wenn das Seitenelement eine Scherung aufweist. Alle Einschränkungen können sich ändern. Aktuelle Informationen finden Sie unter Google Slides API.