במדריך הזה מתוארים המושגים הבסיסיים שמשמשים לטרנספורמציה (כלומר, הזזה, סיבוב, הגדלה וחיתוך) של רכיבי דף, תוך התמקדות במיוחד בטרנספורמציה האפינית ובפעולות שלה.
למידע נוסף על השימוש בהמרות מסוג זיקה כדי להשיג תוצאות ספציפיות, קראו את המדריך צורות גודל ומיקום.
אפשר לשלוט בגודל ובמיקום החזותי של רכיב בדף באמצעות שני מאפיינים: size ו-transform. הגודל מתאר את הגודל האידיאלי או המובנה של רכיב הדף שנוצר. הטרנספורמציה מציינת מטריצה דו-ממדית של הטרנספורמציה האפינית, שמציינת איך אובייקט בגודל המובנה שלו עובר שינוי כדי ליצור את המראה הוויזואלי הסופי שלו.
כשבוחרים רכיב דף בממשק המשתמש של Slides ומשנים את הגודל החזותי שלו באמצעות נקודות האחיזה להתאמה, למעשה מעדכנים את מטריצת הטרנספורמציה הזו. העברת הרכיב בדף או סיבוב שלו מעדכנים גם את מטריצת הטרנספורמציה של הרכיב.
איך להתחיל להשתמש בממשק המשתמש של Slides
שיטת החישוב של המטריצה שבה משתמשים כדי לשנות את גודל הרכיבים בדף ולשנות את הגודל שלהם היא מאוד חזקה, אבל בהתחלה היא יכולה להרתיע. רוב החישובים האלה נתאר כאן. עם זאת, תוכלו לפשט את המפרט של טרנספורמציות וגדלים באמצעות הגישה הבאה:
- ליצור רכיבים בדף באמצעות ממשק המשתמש של Slides.
- ממקמים את קנה המידה של רכיבי הדף האלה כרצונך, עדיין באמצעות ממשק המשתמש של Slides.
- קוראים את הגודל והטרנספורמציה של הרכיבים האלה באמצעות שיטת get.
המידע הזה מספיק כדי לעזור לכם להתחיל. בהמשך המדריך מוסבר על חישובי הטרנספורמציה שבהם אפשר להשתמש כדי לטפל ברכיבים בדף בפירוט.
מטריצות של טרנספורמציה אפינית
מטריצות הטרנספורמציה האפיניות הדו-ממדיות משמשות בדרך כלל בספריות גרפיות כדי לשלוט בקנה המידה, הסיבוב, הגזירה, ההשתקפות והתרגום של הרכיבים. ב-Slides API, הטרנספורמציה של רכיב בדף מיוצגת כמטריצה של 3x3:
הפרמטרים שנעשה בהם שימוש בטרנספורמציה הם:
translate_x |
הפרמטרים של Translate מציינים את המיקום (X,Y) של הפינה השמאלית העליונה של רכיב הדף, ביחס לפינה הימנית העליונה של הדף. אפשר לציין את המיקום היחסי באמצעות יחידות של נקודות (pt) או של יחידות מידה באנגלית (EMU). |
translate_y
| |
scale_x
| הפרמטרים של קנה המידה קובעים את הגודל של רכיב דף כלשהו בזמן העיבוד. אלה גורמי הכפלה ללא יחידות. לדוגמה, ערך scale_x
של 1.5 מגדיל את רוחב הרכיב ב-50%.
|
scale_y
| |
shear_x
| גם הפרמטרים של הגזירה הם חסרי יחידות ושולטים בהטיה של רכיב בדף. ניתן להשתמש בפרמטרים של שינוי גודל וגזירה ביחד כדי לסובב רכיב בדף. |
shear_y |
אפשר למצוא דוגמאות רבות באינטרנט שמראות איך מטריצות טרנספורמציה דו-ממדיות משפיעות על עיבוד אובייקטים גרפיים.
מטריצת הטרנספורמציה היא יחסית לקבוצה המכילה או לדף המכיל של הרכיב. לדוגמה, אם יוצרים רוטציה לקבוצה שמכילה מלבן, ערכי השדות transform
של הקבוצה משקפים את הסיבוב, אבל ערכי השדות transform
של המלבן לא לא יכללו אותו.
מתבצע חישוב של הגודל החזותי
כדי לקבוע את הגודל החזותי (המעובד) של רכיב בדף, צריך לקחת בחשבון את הגודל ואת מאפייני הטרנספורמציה ביחד. אי אפשר לקבוע איזה משני רכיבי הדף גדול יותר מבחינה חזותית רק על ידי השוואת מאפייני הגודל שלהם: צריך למפות את גבולות הרכיב באמצעות מטריצת הטרנספורמציה ולחשב גודל שעבר רינדור.
מיפוי נקודה
כדי למפות נקודה ספציפית באמצעות מטריצת הטרנספורמציה, ממירים את הנקודה (x, y) לווקטור [x, y, 1] ולאחר מכן מבצעים הכפלת מטריצות. בהתאם למיפוי של נקודה p:
\[p' = Ap\]
זה יהפוך ל:
לכן הקואורדינטות של הנקודה החדשה p' הן:
חישוב הגבולות
כדי לקבוע את הגודל המעובד של תיבת התוחם של רכיב מסוים אחרי פעולת טרנספורמציה שגורמת ומכווצת, משתמשים:
למידע נוסף על השימוש בהמרות מסוג זיקה כדי להשיג תוצאות ספציפיות, קראו את המדריך צורות גודל ומיקום.
מגבלות
חלק משדות המיקום והגודל לא תואמים לסוגים מסוימים של רכיבי דף. הטבלה שבהמשך מסכמת את התאימות של רכיבים מסוימים בדף לשדות של מידות ומיקום.
שדה | צורה | וידאו | טבלה |
---|---|---|---|
תרגום | ✔ | ✔ | ✔ |
קנה מידה | ✔ | ✔ | לא** |
חיתוך | ✔ | לא | לא |
** כדי לעדכן את המאפיינים של שורות ועמודות בטבלה, משתמשים ב-UpdateTableRowPropertiesRequest
וב-UpdateTableColumnPropertiesRequest
.
כל שדות הגודל והמיקום עשויים לספק תוצאות לא צפויות אם ברכיב הדף יש חיתוך. כל המגבלות כפופות לשינויים. מידע עדכני זמין במאמר Google Slides API.