ART
BEAUTÉ ET BIEN-ÊTRE
ARTISANAT
CULTURE ET HISTOIRE
DIVERTISSEMENT
ENVIRONNEMENT
NOURRITURE ET BOISSONS
INGÉNIERIE INVERSE
SCIENCES
SPORTS
TECHNOLOGIE
TECHNOLOGIE PORTABLE
PostScript and the Raster Image Processor
Pixel

Créé par

Pixel

30. août 2026FI
0
0
0
0
0

PostScript and the Raster Image Processor

Every other printer in this batch is told where the dots go. The computer decides, in that printer's own dot grid, using that printer's own escape codes - so a document is tied to the machine it was written for, and a better printer needs a new driver and gives you nothing you did not already have. John Warnock and Chuck Geschke had built Interpress at Xerox PARC and left in 1982 to sell the idea properly. PostScript, released in 1984, sends a PROGRAM instead of dots: moveto, curveto, fill, show, in coordinates that mean the same thing on a 300 dot-per-inch office laser and a 2540 dot-per-inch imagesetter. A raster image processor inside the printer executes it and produces the bitmap. That is why the Apple LaserWriter of 1985 had a 12 MHz 68000 and one and a half megabytes of memory - more computer than the Macintosh plugged into it. A 300 dpi A4 frame buffer is over a megabyte on its own and there is nowhere else to keep it. And the job is hard real time: once the paper is moving a laser engine cannot be paused, so a RIP that falls behind does not print slowly, it loses the page. That is the entire content of PRINT OVERRUN. Two things fall out of it that shaped everything after. Outlines scaled at print time are not enough on a coarse grid - at 300 dpi an eight point stem rounds up while a ten point stem rounds down, so the smaller type prints bolder - which is why fonts carry hints saying what must survive quantisation. And a page that is a program is a page nobody can predict: you cannot know how long it will take, or whether it terminates, without running it. PDF, in 1993, kept the whole imaging model and deleted the loops, and that is the document you are reading on a screen today.
Avancé
4 hours

Consignes

1

Be the RIP

Write six lines of PostScript that draw one filled shape with a curve in it. On graph paper, evaluate the Bezier by hand at eight points using de Casteljau's construction - midpoints of midpoints, no algebra needed - and join them. Now scan-convert it: for each row of squares, mark where the outline crosses, and fill between an odd and an even crossing. You have executed the page.

Matériaux pour cette étape :

Graph PaperGraph Paper6 feuilles

Outils nécessaires :

Graphite Pencil SetGraphite Pencil Set
Steel Ruler (30cm)Steel Ruler (30cm)
Desktop ComputerDesktop Computer
2

Do it again at a coarser grid, and watch the letters break

Repeat the fill on 5 mm squares instead of 2 mm. The curve survives; a letter does not. Draw a lower-case n at both grids and compare the two upright stems - on the coarse grid one is a square wide and the other two. Then render the same file with a RIP at 72, 150 and 300 dpi and print all three. The printed pages are the same argument in ink.

Matériaux pour cette étape :

Graph PaperGraph Paper6 feuilles
PaperPaper6 feuilles

Outils nécessaires :

Desktop ComputerDesktop Computer
Magnifying Loupe (10x)Magnifying Loupe (10x)
Graphite Pencil SetGraphite Pencil Set
3

Frame buffers, the real-time budget, hinting, and four languages

Loading Jupyter Notebook...

Outils nécessaires :

Desktop ComputerDesktop Computer
4

Compendium: the stack machine, and what a font turned out to be

PostScript is postfix and stack-based, like Forth: `100 200 moveto` pushes two numbers and calls an operator that consumes them. That choice is not decoration. An interpreter for it fits in a few tens of kilobytes of ROM, needs no parser worth the name, and can be extended at run time because a procedure is just a value in a dictionary - which is how a document can define its own operators and a font can be a program that draws itself. The imaging model underneath is small and complete: a current path, a current transformation matrix, a clip, and paint operators. Everything on a modern page still reduces to those four. The font part turned into a fight. Adobe published Type 3 - unhinted, any PostScript allowed - and kept the Type 1 hinting format proprietary, licensing it with the interpreter. Apple and Microsoft answered with TrueType in 1991, a different outline representation with quadratic curves and its own instruction-based hinting, and Adobe opened Type 1 in response. The two lived side by side for a decade and were finally merged into OpenType, which is why a font file today can carry either kind of curve inside one container. The argument was never really about curves; it was about who owned the instructions that decide where a stem lands on a pixel.

Outils nécessaires :

Notebook and PencilNotebook and Pencil

Matériaux

2

Outils requis

5

CC0 Domaine public

Ce blueprint est publié sous CC0. Vous êtes libre de copier, modifier, distribuer et utiliser ce travail pour tout usage, sans demander la permission.

Soutenez le Maker en achetant des produits via son Blueprint où il perçoit une Commission Maker définie par les Vendeurs, ou créez une nouvelle itération de ce Blueprint et incluez-le comme connexion dans votre propre Blueprint pour partager les revenus.

Commentaires

(0)

Se connecter pour participer à la discussion

Chargement des commentaires...