(import (chibi sxml) (srfi 1) (scheme small) (chibi)) (define num number->string) (define (elenq-logo sub size x y . extra) ; 10 x 4mm `(svg (@ (width "10") (height "4") (viewBox "0 0 12 5")) (g (@ (id "elenq-logo") (transform ,(string-append "translate(" (num x) "," (num y) ")" "scale(" (num size) ")" (if (< 0 (length extra)) (string-append "rotate (" (num (first extra)) ")") "") ))) (g (@ (transform "scale(0.1667)")) (text (@ (x 0) (y 0) (style "font-size: 30; line-height: 1.25; font-family: armata; stroke: none; text-anchor: middle")) "ElenQ") (text (@ (x 0) (y 8) (style "font-size: 10; line-height: 1.25; font-family: armata; stroke: none; text-anchor: middle;")) ,sub))))) (define elenq-technology (sxml->xml (elenq-logo "TECHNOLOGY" 1 6 3))) (define elenq-publishing (sxml->xml (elenq-logo "PUBLISHING" 1 6 3))) (define args (command-line)) (with-exception-handler (lambda (x) (error (string-append "USAGE: chibi-scheme " (car args) " tech|pub"))) (lambda () (case (string->symbol (second args)) ((tech) (display elenq-technology)) ((pub) (display elenq-publishing)))))