ntg-context - mailing list for ConTeXt users
 help / color / mirror / Atom feed
From: Hans Hagen <j.hagen@xs4all.nl>
To: kresimircindric@gmail.com,
	mailing list for ConTeXt users <ntg-context@ntg.nl>
Subject: Re: ConTeXt: specify a path to font in \definefontfamily
Date: Wed, 20 Nov 2019 09:49:10 +0100	[thread overview]
Message-ID: <ff69276c-d54b-8242-7484-c50ae3377984@xs4all.nl> (raw)
In-Reply-To: <CA+jLagm+A2cywJ_g50F-iWtE9adYsi=E4GenoHZ2+n=kAgdiKQ@mail.gmail.com>

On 11/19/2019 10:50 AM, Krešimir Cindrić wrote:
> I'm /very/ new to ConTeXt, so please excuse the newbie question. I'm 
> trying to load a font from a file. The |.otf| files are stored in a 
> directory named |fonts/| which is in the directory of the |.tex| file 
> I'm trying to compile.
> 
> This code does not work, and reverts to the default font:
> 
> |\definefontfamily[mainface][serif][My Font][tf=file:./fonts/MyFont.otf, 
> it=file:./fonts/MyFont-It.otf, bf=file:./fonts/MyFont-Bd.otf, 
> bi=file:./fonts/MyFont-BdIt.otf]\setupbodyfont[mainface]\starttext\title{Hello, 
> world!}Hello World! \emph{Hi!}\stoptext|
> 
> However, if I copy the |.otf| files into the same directory as the 
> |.tex| file, and write |tf=file:MyFont.otf| etc, then everything works 
> fine.
> 
> How do I specify a relative path to the font, inside the |.tex| file?
> 
> In LaTeX, I would use |fontspec| package and do the following:
> 
> |\setmainfont{MyFont.otf}[Path =./fonts/, ItalicFont =MyFont-It.otf]|
> 
> However, I couldn't find the equivalent syntax for |\definefontfamily| 
> in ConTeXt.
> 
> Just to mention, I am using ConTeXt version: 2019.03.21 21:39 as part of 
> TeX Live, on Manjaro Linux.
It is normally a bad idea to have fonts in such a place. You never know 
how it will clash with other fonts (versions, similar names, etc).

In context, we have

tex/texmf-fonts

so best is to use:

tex/texmf-fonts/data/MyFont-It.otf

etc, them run mtxrun --generate and let the system sort it out.

Another option is to set the RUNTIMEFONTS environment variable.

Like:

\starttext

   % \ctxlua{fonts.names.addruntimepath("./myfonts")}
     \ctxlua{os.setenv("RUNTIMEFONTS","./myfonts")}

     Hello World!

     \definefont[myfont][file:myfont.otf]

     {\myfont Hello World!}

\stoptext

But .. you need tio wipe such a font from the cache when you move it and 
other projects using a different font with the same name can be in 
trobles. Fonts are best managed very careful as they are responsible for 
long term inconsistencies.

There is no official interface from tex this (maybe WS has a suggestion 
that fits into the definefontfamily subsystem)

Hans

-----------------------------------------------------------------
                                           Hans Hagen | PRAGMA ADE
               Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
        tel: 038 477 53 69 | www.pragma-ade.nl | www.pragma-pod.nl
-----------------------------------------------------------------
___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://context.aanhet.net
archive  : https://bitbucket.org/phg/context-mirror/commits/
wiki     : http://contextgarden.net
___________________________________________________________________________________

  parent reply	other threads:[~2019-11-20  8:49 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-11-19  9:50 Krešimir Cindrić
2019-11-20  8:28 ` Henning Hraban Ramm
2019-11-20  8:49 ` Hans Hagen [this message]
2019-11-20  9:08   ` Krešimir Cindrić
2019-11-20  9:17     ` Hans Hagen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=ff69276c-d54b-8242-7484-c50ae3377984@xs4all.nl \
    --to=j.hagen@xs4all.nl \
    --cc=kresimircindric@gmail.com \
    --cc=ntg-context@ntg.nl \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).