I knocked together a very minimal pure-Racket library for this so you
don't have to FFI.  It won't give you all the bells and whistles, but
it should be a good starting point.

https://pkgd.racket-lang.org/pkgn/package/font-finder

Docs:   https://github.com/dstorrs/font-finder/blob/master/README.md

Newly arrived on a package server near you.

...where I note there is a newly-created package named 'fontland' that
was put up by Matthew and probably does all this and more.  Doh.

Well, hopefully this helps a little bit.




On Wed, Apr 1, 2020 at 2:48 PM Matthew Butterick <m...@mbtype.com> wrote:
>
> The answer is you can't, through pure Racket, because Racket delegates the 
> nitty-gritty of font-file resolution to external font-handling libraries.
>
> It is possible, however, to call into the `fontconfig` library via the FFI 
> and make it do the heavy lifting of 1) scanning font directories to amass a 
> list of possible fonts and then 2) finding a match for a certain query 
> pattern, say a family name.
>
>
>
> On Mar 31, 2020, at 4:52 PM, Matthew Butterick <m...@mbtype.com> wrote:
>
> IIUC every `font%` object must correspond to a particular font file on disk.
>
> If so, given a `font%` object, how do I extract the path to that file?
>
>
> --
> You received this message because you are subscribed to the Google Groups 
> "Racket Users" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to racket-users+unsubscr...@googlegroups.com.
> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/racket-users/C28B01B3-4772-4AA4-899C-78DADE7B8B2A%40mbtype.com.

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/racket-users/CAE8gKoeWGa4M37BHYu82HbL0qk9xjuqMwRNT0J3_K%3DW2K3BP2g%40mail.gmail.com.

Reply via email to