פוסטסקריפט – הבדלי גרסאות

תוכן שנמחק תוכן שנוסף
מ תיקון קישור, רווחים
שורה 11:
== השפה ==
פוסטסקריפט היא שפה [[שלמה-טיורינג]]. תוכניות פוסטסקריפט נכתבות בדרך כלל על ידי תוכנות ולא על ידי בני אדם, אולם ניתן לבצע חישובים וליצור איורים על ידי יצירה ידנית של קובצי פוסטסקריפט.
 
<br />
פוסטסקריפט היא שפה [[מפרש (תוכנה)|מפורשת]], מבוססת [[מחסנית (מבנה נתונים)|מחסנית]] (Stack). התחביר משתמש ב[[כתיב פולני]]. הדבר מייתר את השימוש בסוגריים, אך הופך את השפה למעט קשה לקריאה, ודורש מהקורא לזכור את מצב המחסנית.
 
<br />
השפה התפתחה משפת [[FORTH]] ומכילה מלבד פעולות חשבוניות, מבני בקרה תכנותיים כלולאות או משפטי אם-אז (IF-THEN) גם מבני נתונים. מעבר למבני הנתונים הפשוטים כמספרים ומחרוזות, שפת פוסטסקריפט בנוייה סביב מבנה נתונים חשוב ומרכזי בשפה - מילון ערכים (Dictionary). המילון מורכב מזוגות של מפתחות וערכים, כאשר הן כמפתח והן כערך יכול לשמש כל מבנה נתונית בשפה. בין היתר גם מבנה נתונים של מילון יכול להוות ערך של מפתח במילון אחר. בצורה זו ניתן לבנות מבני נתונים עשירים למדי.
 
<br />
מימד נוסף של השפה הוא העובדה שפונקציות או פרוצדורות במושגי פוסטסקריפט הן למעשה מערכים של אופרטורים, כך שניתן להפעיל פעולות המיועדות במקור לפעול על נתונים - על קוד של פרוצדורות. למשל, ניתן לשרשר שתי פרוצדורות על ידי התייחסות אליהן כשני מערכי נתונים.
 
<br />
מעבר למרכיבים התכנותיים בשפה, שפת פוסטסקריפט מכילה אובייקטים ופעולות גרפיות בדו-מימד. בעזרת פעולות אלה ניתן למקם על הדף המודפס עצמים וקטוריים (רבועים, קשתות, מסלולים, פוליגונים וכדומה), גם טקסט בגופנים שונים, גדלים שונים וגם תמונות דיגיטליות (תמונות המורכבות מ[[פיקסל|פיקסלים]]).
 
<br />
על מנת לאפשר הגדרות גרפיות שאינן תלויות במדפסת מסוימת, שפת פוסטסקריפט מאפשרת למתכנת להגדיר את הצורות הגרפיות במונחי מערכת צירים של המשתמש (User Coordinate System) כאשר פנימית, [[מפרש (תוכנה)|מפרש]] הפוסטסקריפט מחזיק במטריצת המרה המגדירה את היחס בין מערכת הצירים של המשתמש להתקן ההדפסה. מטריצה זו מכונה Current Transformation Matrix, או בקיצור CTM והיא מהווה חלק מהמצב הגרפי שאותו שומר [[מפרש (תוכנה)|מפרש]] הפוסטסקריפט.
 
<br />
על ידי פעולות על מטריצת ההמרה (CTM), ניתן לסובב, לשנות את הגודל ולעוות צורות שונות. למשל, הכפלת המטריצה במטריצת סיבוב יוצרת סיבוב של מערכת הצירים של המשתמש, והפעלת אופרטורים גרפיים תגרום הופעתם מסובבים על התקן הפלט (בדרך כלל על הדף המודפס).
 
<br />
מאפיינים אחרים של המצב הגרפי הם עובי הקווים, הפונט הנוכחי, הצבע הנוכחי, והאזור על הדף עליו ניתן לצייר (Clipping Path).
<br />
 
== ראו גם ==