[NTG-context] \getscaledglyph for width-only

Brian R. Landy brian at landy.cx
Thu Aug 18 01:12:57 CEST 2016


> On Aug 17, 2016, at 5:45 PM, Hans Hagen <pragma at wxs.nl> wrote:
> 
> On 8/17/2016 9:56 PM, Brian R. Landy wrote:
>> Hi, I was wondering if there is a way to call \getscaledglyph to scale a
>> glyph only horizontally, leaving the height untouched?  Or maybe an
>> alternate command?
>> 
>> I can sort of accomplish this with (for example)
>> \scale[sx=0.75,sy=1.0]{}{A}, but that encloses the glyph in an \hbox,
>> which can be problematic.  \getscaledglyph doesn't cause me any
>> problems, except that it scales the height too.
> 
> \starttext
> 
> \definefontfeature[whatever][default][extend=2.5]
> 
> \definedfont[Serif*whatever at 12pt]
> 
> whatever
> 
> \stoptext
> 

Thank you.  One thing that \getscaledglyph does it works agnostic to the currently selected font.  For example:

\starttext

% This will print a sans “A” 1.5x larger than 12pt
\switchtobodyfont[12pt,sans]
\getscaledglyph{1.5}{}{A}\par

% This will print a serif “A” 1.5x larger than 10pt
\switchtobodyfont[10pt,serif]
\getscaledglyph{1.5}{}{A}\par

\stoptext

I’m guessing there isn’t a way to use \definedfont  in a similar fashion?


Also, I noticed that \definedfont doesn’t seem to play nicely with \switchtobodyfont:

\starttext

\definefontfeature[whatever][default][extend=2.5]

% This looks ok
\switchtobodyfont[12pt,serif]
{\definedfont[Serif*whatever at 12pt] what}ever\par

% the “ever” is not printed properly, it overlaps itself
\switchtobodyfont[10pt,serif]
{\definedfont[Serif*whatever at 10pt] what}ever\par

\stoptext

Best,
Brian


More information about the ntg-context mailing list