From c8a49d69fa78ca3e6b0ce5feec76dcbd2e64b64d Mon Sep 17 00:00:00 2001 From: Masamichi Hosoda Date: Sat, 12 Dec 2015 01:49:37 +0900 Subject: [PATCH] Issue 4701/2: Fix `-dgs-load-lily-fonts' option 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 | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/scm/framework-ps.scm b/scm/framework-ps.scm index b45a69d615..f6d1700f42 100644 --- a/scm/framework-ps.scm +++ b/scm/framework-ps.scm @@ -246,10 +246,15 @@ 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) @@ -402,7 +407,7 @@ ((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 -- 2.39.2