]> git.donarmstrong.com Git - lilypond.git/commitdiff
Issue 4701/2: Fix `-dgs-load-lily-fonts' option
authorMasamichi Hosoda <trueroad@trueroad.jp>
Fri, 11 Dec 2015 16:49:37 +0000 (01:49 +0900)
committerMasamichi Hosoda <trueroad@trueroad.jp>
Mon, 28 Dec 2015 11:55:56 +0000 (20:55 +0900)
internal-font test by name is changed to the following:
CFF-font or not.
The font file exists in the LilyPond data directory or not.

scm/framework-ps.scm

index b45a69d61504dc6a21457c08ffa388bc48caa0b9..f6d1700f424355f278fe0d3facdfa1690a030125 100644 (file)
                    footer)))
 
 (define (write-preamble paper load-fonts? port)
-  (define (internal-font? file-name)
-    (or (string-startswith file-name "Emmentaler")
-        (string-startswith file-name "emmentaler")
-        ))
+  (define (internal-font? font-name-filename)
+    (let* ((font (car font-name-filename))
+           (file-name (caddr font-name-filename))
+           (font-file-name (ly:find-file (format #f "~a.otf" file-name))))
+      (and font
+           (cff-font? font)
+           font-file-name
+           (string-contains font-file-name
+                            (ly:get-option 'datadir)))))
 
   (define (load-font-via-GS font-name-filename)
     (define (ps-load-file file-name)
                     ((ly:get-option 'gs-load-lily-fonts)
                      (if (or (string-contains (caddr name)
                                               (ly:get-option 'datadir))
-                             (internal-font? (caddr name)))
+                             (internal-font? name))
                          (load-font-via-GS name)
                          (load-font name)))
                     (else