Schön

Grafer
2006 by LFSaw
Typography and SuperCollider
/*RUN*/ var win, view, str, dynStr, authStr, font; str = "Die Welt ist sch"++154.asAscii++"n. Viele Dinge der Welt vermitteln uns eine aus ihnen herauskommende Eleganz."; dynStr = [ "Was macht B"++138.asAscii++"ume sch"++154.asAscii++ "n? Ist es ihre Dynamik, ihre scheinbare Zerbrechlichkeit bei gleichzeitiger Stabilit"++138.asAscii++"t?", "Was macht gutes Werkzeug sch"++154.asAscii++"n? Seine Sinnhaftigkeit? Seine Reduktion auf das Wesentliche?", "Warum sind manche Dinge nicht sch"++154.asAscii++"n? Warum f" ++ 159.asAscii++ "hlen sich viele Menschen dadurch nicht gest"++154.asAscii++"rt?" ]; authStr = "[LFSaw, 2007]"; font = Font("GillSans-Light", 34); win = GUI.window.new("", GUI.window.screenBounds, border: false); win.view.keyDownAction_{|me, char| (char == $q).or{char == 27.asAscii}.if{win.close}}; win.view.background = Color.gray(0.3); view = GUI.userView.new(win, win.view.bounds); view.drawFunc = { (str).drawInRect(Rect(150, 100, 800, 800), font, Color.white ); dynStr.do{|str, i| (str).drawInRect(Rect(200, 100 + ((i+1) * 180), 800, 800), font, Color.gray(1, 0.5) ); }; (authStr).drawInRect(Rect(*(GUI.window.screenBounds.extent.asArray - [150, 50] ++ [100, 100])), Font("GillSans-Light", 18), Color.black ); }; view.keyDownFunc_(win.view.keyDownAction); win.fullScreen; win.front; win.view.focus