]> git.donarmstrong.com Git - lilypond.git/commitdiff
Issue 4902/2: Improve `-dgs-load-fonts` option for TTF
authorMasamichi Hosoda <trueroad@trueroad.jp>
Sun, 19 Jun 2016 12:54:46 +0000 (21:54 +0900)
committerMasamichi Hosoda <trueroad@trueroad.jp>
Mon, 27 Jun 2016 14:45:58 +0000 (23:45 +0900)
`-dgs-load-fonts` loads fonts via Ghostscript.
However, if a TrueType font (TTF)
that does not have glyph names is loaded via Ghostscript,
all characters are shown in TOFU.

This commit lets `-dgs-load-fonts` loads those fonts
in a way that is not via Ghostscript.

scm/framework-ps.scm

index 42b60b4042f61b87f8b5b8d68d209fa41ccd476f..36c4dda9cbdcacafbe5a4fad77d41e6b4e18c8fe 100644 (file)
         (ly:warning (_ "Font ~a cannot be loaded via Ghostscript because it is an OpenType/CFF (OTC) font.")
                     name)
         (load-font font-name-filename))
-       ;; TODO: Check TrueType fonts that do not have glyph names.
+       ((and (string? bare-file-name)
+             (eq? (ly:get-font-format bare-file-name font-index) 'TrueType)
+             (not (ly:has-glyph-names? bare-file-name font-index)))
+        (ly:warning (_ "Font ~a cannot be used via Ghostscript because it is a TrueType font that does not have glyph names.")
+                    name)
+        (load-font font-name-filename))
        (else
         (cons name
               (if (mac-font? bare-file-name)