Functional PostScript Examples
Headlines paints a row of messages in fading color and brightness.
It demonstrate how to create fonts and glyphpaths, how to vary the
style/attribute for drawing in colors, how to use colormap to
create pictures, and how to create and change colors (rgb, hsb,
hsb:h, hsb:b, etc).
The procedure takes one argument, num, which indicates how many times the headline gets printed. [PostScript Output]
(define (headlines num)
(let* ((times (font "Times-BoldItalic" 36))
(helv (font "Helvetica" 36))
(headline-path (join (string->glyphpath times "Turnip")
(string->glyphpath helv " Born Talking")))
(headline (paint-glyphpath headline-path (:color (rgb 1 0 0))))
(vertical-step 45))
(translate 100 200
(let recur ((n num))
(if (<= n 1) headline
(let ((next-headline (recur (- n 1))))
(compose
headline
(translate 0 vertical-step
(colormap (lambda (c)
(hsb (hsb:h c)
(- (hsb:s c) 0.1)
(- (hsb:b c) .05)))
(recur (- n 1)))))))))))
FPS Examples: Right-angle Fractal | Arrow Fractal | Headlines | Clipping Message | Turkey Bitmap | Sun | Bounding Box | Morphing Square to Circle | Text Along a Circle | Demo Driver