Schön
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