Acumen Training

Qualifying Questions for Advanced PostScript

The Advanced PostScript and Variable Data PostScript classes presume that you have had the PostScript Foundations class or its equivalent. Many people have some PostScript experience and assume they know enough to take the more advanced classes. Unfortunately, those classes assume a very good understanding of some of PostScript's deeper mechanisms; taking either of them with inadequate background is a frustrating and not very useful experience.

To help you judge whether you have enough background in PostScript to take the Advanced PostScript or Variable Data PostScript class, please examine the set of questions below. If you can answer most of them, you probably have had enough experience to take the advanced classes.

1. What is a transformation matrix?

2. How is the Current Transformation Matrix related to the resolution of a PostScript printer?

3. How do you create a dictionary?

4. How do you store key-value pairs into a dictionary?

5. How do you retrieve values from a dictionary?

6. How do you manage virtual memory?

7. What key-value pairs reside in a font dictionary?

8. How do you construct your own font?

9. How do you re-encode a font? Why would you want to do so?

10. How do you access printer-specific features?

11. How do you print scanned image data coming from the input stream?

12. How do you bind procedure definitions and why should you do so?

13. What does the load operator do and how to use it?

14. What does the Server Loop do?

15. How do you place data behind the Server Loop? What does this mean?

16. What are the minimum requirements for an EPS file?

17. What is the purpose of the Execution Stack?

18. What is the purpose of the Graphics State Stack?

19. What is the purpose of the Dictionary Stack?

20. How do you place a dictionary on the dictionary stack? How do you remove it? Why?

21. What is the difference between an executable and literal name?

22. How do you place your program into a "stopped" context? Why would you do so?

23. How does PostScript handle errors and how can you alter this mechanism?

24. What's the best way to do dashed lines in PostScript?

25 How do you read image and other data in-line with the PostScript program?