[NTG-context] Embedding fonts from a file

2020-08-14 Thread Krešimir Cindrić
Hello,

About a year ago, I asked on this list how to embed OpenType fonts from
files (that is, use fonts that are not installed on the system), because
one of my projects needed portability (be entirely contained in one
directory that I could share). I was given a great answer by Hans and this
minimal example
```
\starttext

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

 Hello World!

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

 {\myfont Hello World!}

\stoptext
```
This worked beautifully (with some caveats, like having to clear the cache
regularly), but for some reason, it stopped working. I don't know exactly
when, because I haven't compiled that project in months, and in the
meantime I reinstalled Linux. But now, all embedded fonts are not loading
and I get "'fallback modern-designsize rm 12pt' is loaded" as an error
message.

Any assistance would be appreciated.

Krešimir
___
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
___


Re: [NTG-context] ConTeXt: specify a path to font in \definefontfamily

2019-11-20 Thread Krešimir Cindrić
Thank you for the reply.

I was aware that I can install fonts in ` tex/texmf-fonts `. However, the
idea behind my odd request was the need to have the entire project
contained in a single directory. which I can share with people and compile
on any computer with a working TeX Live, without them having to install any
fonts or dependencies.

I tried setting the RUNTIMEFONTS env variable, and it does exactly what I
want. The fact that it leaves garbage in the cache that can influence
other, unrelated projects, is a bit unsettling, I guess I'll just have to
remember to tell people to clean the cache.

Thanks again,

Krešimir

On Wed, 20 Nov 2019 at 09:49, Hans Hagen  wrote:

> 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
___