From: Han-Wen Nienhuys Date: Sat, 21 Jan 2006 00:32:52 +0000 (+0000) Subject: (write-preamble): use it to pick exactly X-Git-Tag: release/2.7.28~1 X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=b92389ba1303ec1492c26a4266ceb8f9f78b6114;p=lilypond.git (write-preamble): use it to pick exactly the right font from a Mac dfont. (write-preamble): don't forget directory, only look at files. --- diff --git a/ChangeLog b/ChangeLog index a7d758b776..b1a04dab2b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -2,6 +2,7 @@ * scm/framework-ps.scm (write-preamble): use it to pick exactly the right font from a Mac dfont. + (write-preamble): don't forget directory, only look at files. * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract PS name from TTF font. diff --git a/scm/framework-ps.scm b/scm/framework-ps.scm index d2092c8d67..d3a0891ff2 100644 --- a/scm/framework-ps.scm +++ b/scm/framework-ps.scm @@ -286,18 +286,25 @@ (format "cd ~a && fondu -force '~a'" dir-name filename))) (set! files (dir-listing dir-name)) - + (for-each (lambda (f) - (if (and (not embed) - (equal? name (ly:ttf-ps-name f))) - (set! embed - (font-file-as-ps-string name (dir-join dir-name f)))) - - (if (or (equal? "." f) - (equal? ".." f)) - #t - (delete-file (dir-join dir-name f)))) + (let* + ((full-name (dir-join dir-name f))) + + (if (and (not embed) + (equal? 'regular (stat:type (stat full-name))) + (equal? name (ly:ttf-ps-name full-name))) + + (set! embed + (font-file-as-ps-string name full-name))) + + (if (or (equal? "." f) + (equal? ".." f)) + #t + (delete-file full-name)))) + + files) (rmdir dir-name)