lilypond-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: How to determine if a font is a fallback font?


From: Urs Liska
Subject: Re: How to determine if a font is a fallback font?
Date: Tue, 28 Apr 2015 10:16:32 +0200
User-agent: Mozilla/5.0 (X11; Linux i686; rv:31.0) Gecko/20100101 Thunderbird/31.6.0



Am 28.04.2015 um 10:12 schrieb Thomas Morley:
2015-04-28 9:48 GMT+02:00 Urs Liska <address@hidden>:

Am 28.04.2015 um 09:38 schrieb Werner LEMBERG:

Is there a function to retrieve the "font name" from a given file
name?  It would be a viable approach if I could compare the result
of that request with the original font name.

For TTFs and TTCs (either with TrueType outlines or embedded CFFs) you
can use `ly:ttf-ps-name'.


Thanks that seems to work perfectly. Try

\version "2.19.19"

fontExists =
#(define-void-function (parser location font-name)(string?)
    (let* ((font-file (ly:font-config-get-font-file font-name))
           (reverse-font-name (ly:ttf-ps-name font-file))
           (font-exists (string=? font-name reverse-font-name)))
      (ly:message (format "\nGiven font name: ~a" font-name))
      (ly:message (format "Determined font file: ~a" font-file))
      (ly:message (format "Actual font in that file: ~a" reverse-font-name))
      (ly:message (format "Given font is present: ~a" font-exists))))

\fontExists "Emmentaler-13"
\fontExists "Fancy-Font"

For me this returns:

Given font name: Emmentaler-13
Determined font file: /home/harm/.fonts/wds052801.ttf
Actual font in that file: WaltDisneyScript
Given font is present: #f

Given font name: Fancy-Font
Determined font file: /home/harm/.fonts/wds052801.ttf
Actual font in that file: WaltDisneyScript
Given font is present: #f

OMG!


Again, on an outdated Ubuntu.

But that shouldn't make a difference. At least we can't accept that it makes a difference.

What is the result of ly:ttf-ps-name when you pass it the full path to a real emmentaler file (I can't see where they are on your system of course)?

Urs


Cheers,
   Harm


Looking into lilypond's code, however, I don't see why this shouldn't
work for Type1 fonts (or even pure CFFs) also.  It's worth a try – and
if it works, we should provide an alias name for `ly:ttf-ps-name'.


I don't know how to proceed with this.

However, in the context of my current patch I will add a variant of the
above function to font.scm.

Urs

     Werner



_______________________________________________
lilypond-user mailing list
address@hidden
https://lists.gnu.org/mailman/listinfo/lilypond-user





reply via email to

[Prev in Thread] Current Thread [Next in Thread]