‫יישומי גרפיקה וראיה ממוחשבת – ‪PostScript‬‬                       ‫שפה לתיאור דף מודפס‬                ‫•‬       ‫מטפלת ב...
‫יישומי גרפיקה וראיה ממוחשבת – ‪PostScript‬‬                       ‫מודל יצירת התמונה ‪Imaging Model‬‬                    ...
‫יישומי גרפיקה וראיה ממוחשבת – ‪PostScript‬‬                                       ‫מערכת קואורדינטות‬                    ...
‫יישומי גרפיקה וראיה ממוחשבת – ‪PostScript‬‬                                  ‫עקרונות התכנות‬                      ‫• אופ...
‫יישומי גרפיקה וראיה ממוחשבת – ‪PostScript‬‬                       ‫המחסנית ופעולות אריטמטיות‬                ‫• המחסנית ע...
‫יישומי גרפיקה וראיה ממוחשבת – ‪PostScript‬‬                       ‫המחסנית ופעולות אריטמטיות‬                          ‫ה...
‫יישומי גרפיקה וראיה ממוחשבת – ‪PostScript‬‬                          ‫המחסנית ופעולות אריטמטיות‬                       ‫3...
‫יישומי גרפיקה וראיה ממוחשבת – ‪PostScript‬‬                   ‫פעולות אריטמטיות מורכבות יותר‬     ‫6 + ( 3 : 8)‬         ...
‫יישומי גרפיקה וראיה ממוחשבת – ‪PostScript‬‬        ‫פעולות מחסנית נוספות ‪Stack operators‬‬                       ‫6 8 21...
PostScript – ‫יישומי גרפיקה וראיה ממוחשבת‬            ‫עולות גרפיות - מערכת קואורדינטות‬                (User Coordinate S...
PostScript – ‫יישומי גרפיקה וראיה ממוחשבת‬         newpath                            ‫פעולות גרפיות‬           72 216 mov...
PostScript – ‫יישומי גרפיקה וראיה ממוחשבת‬         newpath                            ‫פעולות גרפיות‬           270 360 mo...
PostScript – ‫יישומי גרפיקה וראיה ממוחשבת‬         newpath                            ‫פעולות גרפיות‬           270 360 mo...
PostScript – ‫יישומי גרפיקה וראיה ממוחשבת‬                       ‫פעולות גרפיות – מילוי צורות‬        newpath           27...
PostScript – ‫יישומי גרפיקה וראיה ממוחשבת‬                        ‫פעולות גרפיות – מילוי צורות‬        newpath           2...
PostScript – ‫יישומי גרפיקה וראיה ממוחשבת‬                        ‫פעולות גרפיות – מילוי צורות‬    newpath     %Begin blac...
PostScript – ‫יישומי גרפיקה וראיה ממוחשבת‬      Procedures and Variables           ‫שגרות ומשתנים‬             Dictionarie...
PostScript – ‫יישומי גרפיקה וראיה ממוחשבת‬      %---- Define procedures ----‫פרוצדורות – מילוי צורות‬      /ppi 72 def    ...
PostScript – ‫יישומי גרפיקה וראיה ממוחשבת‬ ‫רפיקה – טרנספורמציות במערכת הקואורדינטות‬     /Times-Roman findfont 30 scalefo...
PostScript – ‫יישומי גרפיקה וראיה ממוחשבת‬ ‫רפיקה – טרנספורמציות במערכת הקואורדינטות‬     square       %do a square     30...
PostScript – ‫יישומי גרפיקה וראיה ממוחשבת‬ ‫רפיקה – טרנספורמציות במערכת הקואורדינטות‬     square        %do a square     1...
PostScript – ‫יישומי גרפיקה וראיה ממוחשבת‬  )‫רפיקה – שמירת המצב הגרפי ( המסלול הנוכחי‬     /starside     { 72 0 lineto   ...
PostScript – ‫יישומי גרפיקה וראיה ממוחשבת‬  )‫רפיקה – שמירת המצב הגרפי ( המסלול הנוכחי‬     /starside     { 72 0 lineto   ...
Upcoming SlideShare
Loading in...5
×

Post script

233

Published on

My presentation of PostScript from 2002. not much changed in the 10 years that passed.

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
233
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
1
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Post script

  1. 1. ‫יישומי גרפיקה וראיה ממוחשבת – ‪PostScript‬‬ ‫שפה לתיאור דף מודפס‬ ‫•‬ ‫מטפלת בשלשה סוגים של אובייקטים‬ ‫•‬ ‫גרפיים:‬ ‫טקסט‬ ‫•‬ ‫צורות גיאומטריות‬ ‫•‬ ‫תמונות מיובאות‬ ‫•‬ ‫ניתן לבצע בקלות טרנספורמציות‬ ‫•‬ ‫גרפיות של כל האובייקטים על גבי‬‫© ד”ר יעקב רובינוביץ‬ ‫הדף המודפס‬
  2. 2. ‫יישומי גרפיקה וראיה ממוחשבת – ‪PostScript‬‬ ‫מודל יצירת התמונה ‪Imaging Model‬‬ ‫עקרונות של ציור בדיו / בנית דף‬ ‫מודפס‬ ‫הדף הנוכחי ‪ :Current Page‬דף ריק‬ ‫•‬ ‫שעליו התוכנית ממקמת סימונים של‬ ‫בתום הגדרת הדף‬ ‫האובייקטים.‬ ‫הנוכחי, הוא נשלח להדפסה.‬ ‫המסלול הנוכחי ‪ :Current Path‬מסלול‬ ‫•‬ ‫שבנוי מאובייקטים גרפיים. לאחר‬‫© ד”ר יעקב רובינוביץ‬ ‫הגדרתו, ניתן לצייר את המסלול, למלא‬
  3. 3. ‫יישומי גרפיקה וראיה ממוחשבת – ‪PostScript‬‬ ‫מערכת קואורדינטות‬ ‫במדפסת: ‪Device Space‬‬ ‫•‬ ‫ייחודי לכל מדפסת ומדפסת‬ ‫בדף הנוכחי ( ‪)Current Page‬‬ ‫•‬ ‫מערכת קואורדינטות של המשתמש‬ ‫‪( User Coordinate System (user space‬‬ ‫ניתן לשנות את מרחב המשתמש ע" י:‬ ‫הזזה של ראשית הצירים ) (‪,Translation‬‬ ‫(‪,)Rotation‬‬ ‫סיבוב הצירים‬ ‫או שינוי קנה המידה (‪ )Scaling‬עבור כל ציר‬‫© ד”ר יעקב רובינוביץ‬ ‫בנפרד.‬
  4. 4. ‫יישומי גרפיקה וראיה ממוחשבת – ‪PostScript‬‬ ‫עקרונות התכנות‬ ‫• אופרטורים גרפיים – כשליש מן‬ ‫השפה‬ ‫• מחסנית ‪ Stack‬בזיכרון לנתונים‬ ‫( מספרים, שרשראות תווים,‬ ‫אופרטורים)‬ ‫• ‪ Postfix Notation‬האופרטורים :‬ ‫שולפים את הנתונים מהמחסנית. לכן‬ ‫יש למקם את הנתונים במחסנית לפני‬ ‫הקריאה לאופרטור. התוצאה מוחזרת‬ ‫. למחסנית‬‫© ד”ר יעקב רובינוביץ‬ ‫סוגי הנתונים :‬
  5. 5. ‫יישומי גרפיקה וראיה ממוחשבת – ‪PostScript‬‬ ‫המחסנית ופעולות אריטמטיות‬ ‫• המחסנית עובדת במשטר ‪LIFO‬‬ ‫• ניתן למקם במחסנית את כ ל סוגי‬ ‫הנתונים ( מספרים, שרשראות תווים,‬ ‫אופרטורים)‬ ‫21 3.6 –99‬ ‫–99‬ ‫3.6‬ ‫21‬ ‫‪mark‬‬ ‫)‪PS) [1 2] /Font mark‬‬ ‫/‪Font‬‬ ‫]1 2[‬ ‫)‪(PS‬‬‫© ד”ר יעקב רובינוביץ‬
  6. 6. ‫יישומי גרפיקה וראיה ממוחשבת – ‪PostScript‬‬ ‫המחסנית ופעולות אריטמטיות‬ ‫האופרטורים ‪add, sub‬‬ ‫•‬ ‫5 72 ‪add‬‬ ‫5‬ ‫72‬ ‫‪add‬‬ ‫5‬ ‫72‬ ‫23‬ ‫5‬ ‫3.8 6.6 ‪sub‬‬ ‫3.8‬ ‫6.6‬ ‫‪sub‬‬ ‫3.8‬ ‫6.6‬ ‫7.1‬ ‫3.8‬‫© ד”ר יעקב רובינוביץ‬
  7. 7. ‫יישומי גרפיקה וראיה ממוחשבת – ‪PostScript‬‬ ‫המחסנית ופעולות אריטמטיות‬ ‫31 81 526.1 >= ‪div‬‬ ‫52 3 8 >= ‪idiv‬‬ ‫21 01 2 >= ‪mod‬‬ ‫6 8 84 >= ‪mul‬‬ ‫-72 72 >= ‪neg‬‬ ‫‪…sqrt, exp, ceiling, sin‬‬‫© ד”ר יעקב רובינוביץ‬
  8. 8. ‫יישומי גרפיקה וראיה ממוחשבת – ‪PostScript‬‬ ‫פעולות אריטמטיות מורכבות יותר‬ ‫6 + ( 3 : 8)‬ ‫3‬ ‫8‬ ‫‪div‬‬ ‫6‬ ‫‪add‬‬ ‫6‬ ‫3‬ ‫8‬ ‫‪div add‬‬ ‫573.6 .573 8‬ ‫3‬ ‫6‬ ‫6‬ ‫8 ) – 7 3 ‪(X‬‬ ‫‪8 7 3 mul sub‬‬ ‫‪7 3 mul 8 exch sub‬‬ ‫12‬ ‫8‬ ‫-31 12‬ ‫12‬ ‫8‬‫© ד”ר יעקב רובינוביץ‬
  9. 9. ‫יישומי גרפיקה וראיה ממוחשבת – ‪PostScript‬‬ ‫פעולות מחסנית נוספות ‪Stack operators‬‬ ‫6 8 21 ‪=< _clear‬‬ ‫6 6 6 >= ‪dup‬‬ ‫71 8 71 >= ‪pop‬‬ ‫7 8 9 3 1 8 7 9 >= ‪roll‬‬ ‫7 8 9 3- 1 7 9 8 >= ‪roll‬‬‫© ד”ר יעקב רובינוביץ‬
  10. 10. PostScript – ‫יישומי גרפיקה וראיה ממוחשבת‬ ‫עולות גרפיות - מערכת קואורדינטות‬ (User Coordinate System (user space points 72” = 1 432 newpath 144 72 moveto 144 432 lineto stroke showpage 72‫© ד”ר יעקב רובינוביץ‬ 0,0 144
  11. 11. PostScript – ‫יישומי גרפיקה וראיה ממוחשבת‬ newpath ‫פעולות גרפיות‬ 72 216 moveto 144 72 rlineto 288 144 288 moveto 216 0 -216 rlineto stroke showpage 72 144‫© ד”ר יעקב רובינוביץ‬
  12. 12. PostScript – ‫יישומי גרפיקה וראיה ממוחשבת‬ newpath ‫פעולות גרפיות‬ 270 360 moveto 0 72 rlineto 72 0 rlineto 0 -72 rlineto -72 0 rlineto 4 setlinewidth stroke showpage‫© ד”ר יעקב רובינוביץ‬
  13. 13. PostScript – ‫יישומי גרפיקה וראיה ממוחשבת‬ newpath ‫פעולות גרפיות‬ 270 360 moveto 0 72 rlineto 72 0 rlineto 0 -72 rlineto closepath 4 setlinewidth stroke showpage‫© ד”ר יעקב רובינוביץ‬
  14. 14. PostScript – ‫יישומי גרפיקה וראיה ממוחשבת‬ ‫פעולות גרפיות – מילוי צורות‬ newpath 270 360 moveto 0 72 rlineto 72 0 rlineto 0 -72 rlineto closepath fill showpage‫© ד”ר יעקב רובינוביץ‬
  15. 15. PostScript – ‫יישומי גרפיקה וראיה ממוחשבת‬ ‫פעולות גרפיות – מילוי צורות‬ newpath 270 360 moveto 0 72 rlineto 72 0 rlineto 0 -72 rlineto closepath .5 setgray fill showpage‫© ד”ר יעקב רובינוביץ‬
  16. 16. PostScript – ‫יישומי גרפיקה וראיה ממוחשבת‬ ‫פעולות גרפיות – מילוי צורות‬ newpath %Begin black box 252 324 moveto 0 72 rlineto 72 0 rlineto 0 -72 rlineto closepath newpath % light fill newpath % gray box 288 396 moveto 270 360 moveto 0 72 rlineto 0 72 rlineto 72 0 rlineto 72 0 rlineto 0 -72 rlineto 0 -72 rlineto closepath closepath .4 setgray fill .8 setgray fill showpage‫© ד”ר יעקב רובינוביץ‬
  17. 17. PostScript – ‫יישומי גרפיקה וראיה ממוחשבת‬ Procedures and Variables ‫שגרות ומשתנים‬ Dictionaries Key Key’s value system dictionary Operator Action user dictionary Name Variable Name Procedure /ppi 72 def /inch {72 mul} def /inch {ppi mul} def 5 72 mul 5 inch‫© ד”ר יעקב רובינוביץ‬
  18. 18. PostScript – ‫יישומי גרפיקה וראיה ממוחשבת‬ %---- Define procedures ----‫פרוצדורות – מילוי צורות‬ /ppi 72 def /inch {ppi mul} def /box %stack:x y => --- {newpath moveto 1 inch 0 rlineto 0 1 inch rlineto -1 inch 0 rlineto closepath} def /fillbox %stack: grayvalue => --- {setgray fill} def % ---------Main Program---------- 3.5 inch 4.5 inch box 0 fillbox 3.75 inch 5 inch box .4 fillbox 4 inch 5.5 inch box .8 fillbox showpage‫© ד”ר יעקב רובינוביץ‬
  19. 19. PostScript – ‫יישומי גרפיקה וראיה ממוחשבת‬ ‫רפיקה – טרנספורמציות במערכת הקואורדינטות‬ /Times-Roman findfont 30 scalefont setfont /square %procedure to draw a { newpath % filled square 0 0 moveto 90 0 lineto %define a square path 90 90 lineto 0 90 lineto closepath fill %fill it 6 92 moveto % & label it (A Box) show } def square %do a square 200 250 translate %move coord. sys. square %do another square 200 250 translate %and move again square %do a third square showpage‫© ד”ר יעקב רובינוביץ‬
  20. 20. PostScript – ‫יישומי גרפיקה וראיה ממוחשבת‬ ‫רפיקה – טרנספורמציות במערכת הקואורדינטות‬ square %do a square 300 150 translate %move coord sys. 60 rotate %and rotate it square %do it again . . . 300 150 translate 60 rotate square %do a third square showpage‫© ד”ר יעקב רובינוביץ‬
  21. 21. PostScript – ‫יישומי גרפיקה וראיה ממוחשבת‬ ‫רפיקה – טרנספורמציות במערכת הקואורדינטות‬ square %do a square 100 100 translate 1.5 1.5 scale square 100 100 translate .75 1.25 scale %non-uniform scaling square showpage‫© ד”ר יעקב רובינוביץ‬
  22. 22. PostScript – ‫יישומי גרפיקה וראיה ממוחשבת‬ )‫רפיקה – שמירת המצב הגרפי ( המסלול הנוכחי‬ /starside { 72 0 lineto %add line to path currentpoint translate %move origin -144 rotate } def %rotate coord. sys. /star %stack: x y { moveto currentpoint translate 4 {starside} repeat closepath gsave .5 setgray fill grestore % --main program---- stroke } def newpath 200 200 star showpage‫© ד”ר יעקב רובינוביץ‬
  23. 23. PostScript – ‫יישומי גרפיקה וראיה ממוחשבת‬ )‫רפיקה – שמירת המצב הגרפי ( המסלול הנוכחי‬ /starside { 72 0 lineto %add line to path currentpoint translate %move origin -144 rotate } def %rotate coord. sys. /star %stack: x y { moveto currentpoint translate 4 {starside} repeat closepath gsave .5 setgray fill grestore % --main program---- stroke } def newpath 200 200 star showpage‫© ד”ר יעקב רובינוביץ‬
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×