]> git.donarmstrong.com Git - lilypond.git/commitdiff
* scm/output-svg.scm (dashed-line): new function body.
authorHan-Wen Nienhuys <hanwen@xs4all.nl>
Fri, 11 Mar 2005 13:48:12 +0000 (13:48 +0000)
committerHan-Wen Nienhuys <hanwen@xs4all.nl>
Fri, 11 Mar 2005 13:48:12 +0000 (13:48 +0000)
* GNUmakefile.in: create .htaccess.

GNUmakefile.in
scm/framework-svg.scm
scm/output-svg.scm

index e6bd49b4d60b01937ec9696d1301bcebd095b9c5..896371532d5b3f5655b51729ee7888879147238f 100644 (file)
@@ -77,7 +77,7 @@ local-WWW-post:
 AddCharset utf-8 .html\
 AddCharset utf-8 .en\
 AddCharset utf-8 .nl\
-AddCharset utf-8 .txt' > .htaccess 
+AddCharset utf-8 .txt' > $(builddir)/.htaccess 
 
        $(PYTHON) $(buildscript-dir)/mutopia-index.py -o $(builddir)/examples.html ./
        cd $(builddir) && $(FIND) . -name '*.html' -print | $(footifymail) xargs $(footify)
@@ -87,7 +87,7 @@ AddCharset utf-8 .txt' > .htaccess
                > $(outdir)/weblist
        echo '<META HTTP-EQUIV="refresh" content="0;URL=Documentation/out-www/index.html">' > $(builddir)/index.html
        echo '<html><body>Redirecting to the documentation index...</body></html>' >> $(builddir)/index.html
-       cd $(builddir) && ls *.html >> $(outdir)/weblist
+       cd $(builddir) && ls .htaccess *.html >> $(outdir)/weblist
        cat $(outdir)/weblist | (cd $(builddir); GZIP=-9v tar -czf $(outdir)/web.tar.gz  -T -)
 
 tree-prefix = $(builddir)/share/lilypond/$(TOPLEVEL_VERSION)
index d2948e9014107197522257472e53ee6eec8b7f5e..c514619daa8e1682ac149f18a0049733c1a4fc76 100644 (file)
              `(width . ,(format #f "~s" page-width))
              `(height . ,(format #f "~s" page-height))))
     
-    (dump (dump-fonts outputter paper))
+;    (dump (dump-fonts outputter paper))
     (dump
      (string-append
       ;; FIXME: only use pages if there are more than one, pageSet is
       ;; not supported by all SVG applications yet.
       (if page-set? (eo 'pageSet) "")
-      (eo 'g `(transform . ,(format "scale(~a,~a)" output-scale output-scale)))))
+      (eo 'g `(transform . ,(format "scale(~a, ~a) "
+                                   output-scale output-scale)))))
     
     (for-each
      (lambda (page)
@@ -75,7 +76,7 @@
           (eo 'page '(page-orientation . "270"))
           (eo 'page))))
   
-  (dump (string-append (eo 'g)))
+  (dump (string-append (eo 'g )))
   (ly:outputter-dump-stencil outputter page)
   (dump (string-append (ec 'g)))
   (if (or landscape? page-set?)
index cecb165d67160101ca4115f2e83016628029427b..3da3cda6848711b29ac4d8d36ae5997e6d3cd6ac 100644 (file)
@@ -65,7 +65,7 @@
        (apply eo (cons entity attributes-alist)) string (ec entity))))
 
 (define (offset->point o)
-  (format #f " ~S,~S" (car o) (cdr o)))
+  (format #f " ~S,~S" (car o)  (- (cdr o))))
 
 (define (svg-bezier lst close)
   (let* ((c0 (car (list-tail lst 3)))
   (apply string-append
         (map (lambda (x) (char->entity x)) (string->list string))))
 
-(define pango-description-regexp
-  (make-regexp "^([^,]+)+, ?([-a-zA-Z_]*) ([0-9.]+)$"))
+(define pango-description-regexp-comma
+  (make-regexp "^([^,]+), ?([-a-zA-Z_]*) ([0-9.]+)$"))
+
+(define pango-description-regexp-nocomma
+  (make-regexp "^([^ ]+) ([-a-zA-Z_]*) ?([0-9.]+)$"))
 
 (define (pango-description-to-svg-font str)
   (let*
       ((size 4.0)
        (family "Helvetica")
        (style #f)
-       (match (regexp-exec pango-description-regexp str)))
+       (match-1 (regexp-exec pango-description-regexp-comma str))
+       (match-2 (regexp-exec pango-description-regexp-nocomma str))
+       (match (if match-1
+                 match-1
+                 match-2))
+       )
 
     (if (regexp-match? match)
        (begin
                size anchor))))
 
 (define (fontify font expr)
-  (entity 'text expr (cons 'style (svg-font font))))
+  (entity 'text expr
+         `(style . ,(svg-font font))
+         ))
 
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 ;;; stencil outputters
            `(width . ,width)
            `(height . ,(+ thick (* (abs z) (/ thick 2))))
            `(rx . ,(/ blot-diameter 2))
-           `(transform . ,(format #f "matrix (1, ~f, 0, 1, 0, 0)" (- z))
+           `(transform . ,(format #f "matrix (1, ~f, 0, 1, 0, 0)"  z)
                           ))))
 
 (define (beam width slope thick blot-diameter)
 (define-public (comment s)
   (string-append "<!-- " s " !-->\n"))
 
-(define (dashed-line thick on off dx dy)
-  (draw-line thick 0 0 dx dy))
+(define (draw-line thick x1 y1 x2 y2 . alist)
+  
+  (apply entity 'line ""
+        (append
+         `((stroke-linejoin . "round")
+           (stroke-linecap . "round")
+           (stroke-width . ,thick)
+           (stroke . "black")
+           ;;'(fill . "black")
+           (x1 . ,x1)
+           (y1 . ,y1)
+           (x2 . ,x2)
+           (y2 . ,y2))
+         alist)))
 
-(define (draw-line thick x1 y1 x2 y2)
-  (entity 'line ""
-         '(stroke-linejoin . "round")
-         '(stroke-linecap . "round")
-         `(stroke-width . ,thick)
-         '(stroke . "black")
-         ;;'(fill . "black")
-         `(x1 . ,x1)
-         `(y1 . ,y1)
-         `(x2 . ,x2)
-         `(y2 . ,y2)
-         ))
+(define (dashed-line thick on off dx dy)
+  (draw-line thick 0 0 dx dy `(style . ,(format "stroke-dasharray:~a,~a;" on off))))
 
 ;; WTF is this in every backend?
 (define (horizontal-line x1 x2 th)
          ;;(dispatch expr)
          expr
          `(transform . ,(format #f "translate (~f, ~f)"
-                                x
-                                (-  y)))))
+                                x (- y)))))
+
 
 (define (polygon coords blot-diameter)
   (entity 'polygon ""