ntg-context - mailing list for ConTeXt users
 help / color / mirror / Atom feed
From: Hans Hagen <pragma@wxs.nl>
To: ntg-context@ntg.nl
Subject: Re: copyfont and font features
Date: Thu, 17 Nov 2016 13:07:22 +0100	[thread overview]
Message-ID: <e6518ee0-a412-a72f-81de-9f3185254791@wxs.nl> (raw)
In-Reply-To: <fz6h1uf8zptk.dlg@nililand.de>

On 11/17/2016 11:02 AM, Ulrike Fischer wrote:
> Am Thu, 17 Nov 2016 09:46:26 +0100 schrieb Hans Hagen:
>
>> On 11/16/2016 6:17 PM, Ulrike Fischer wrote:
>>> This comes from a tex.sx question
>>> https://tex.stackexchange.com/questions/338942/cancellation-of-color-fontspec-font-settings-while-defining-microtype-context/
>>>
>>> The primitive \copyfont looses with open type fonts all font
>>> features:
>>>
>>> \starttext
>>>
>>> \font\testa={Arial:mode=node;script=latn;language=DFLT;+tlig;+smcp;}
>>> {\testa abc -- }  normal
>>>
>>> \copyfont\testb\testa
>>>
>>> {\testb abc -- } normal
>>>
>>> \stoptext
>>>
>>> As one can see \testb has neither ligatures nor it is in small caps.
>>> Is this a bug or to be expected?
>
>> It's to be expected as \copyfont makes a copy at the tfm level. One can
>> just use
>>
>> \let\testb\testa
>>
>> instead.
>
> Simply using \let doesn't work when you want locally a different
> expansion behaviour:
>
>    ! error:  (font expansion): font has been expanded with different
> stretch limit.
>
> (with pdflatex + lualatex), that's imho the reason why microtype
> copies the fonts.

in fact that is also the case with pdftex: afaik expansion and 
protrusion values are global and once a font is used they get frozen

in luatex (at least the lua font loader) one can set the expansion at 
definition time (which is more natural but not possible in pdftex)

>> It makes no sense to have a replacement (at least I can't think of a
>> case that can't be handled already). Just define the font again.
>
> The question is if microtype can easily retrieve the current font
> features and if it will slow down the code much if it has to
> redefine fonts again and again.

that's a matter of implementation

(because expansion slows down processing anyway, defining an extra font 
is hardly the bottleneck - just some milliseconds)

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
___________________________________________________________________________________

  reply	other threads:[~2016-11-17 12:07 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-11-16 17:17 Ulrike Fischer
2016-11-17  8:46 ` Hans Hagen
2016-11-17 10:02   ` Ulrike Fischer
2016-11-17 12:07     ` Hans Hagen [this message]
2016-11-17 14:05       ` Ulrike Fischer

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=e6518ee0-a412-a72f-81de-9f3185254791@wxs.nl \
    --to=pragma@wxs.nl \
    --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).