ntg-context - mailing list for ConTeXt users
 help / color / mirror / Atom feed
* upload / some new math stuff
@ 2021-06-10 21:35 Hans Hagen
  2021-06-11  7:54 ` Mikael Sundqvist
                   ` (2 more replies)
  0 siblings, 3 replies; 7+ messages in thread
From: Hans Hagen @ 2021-06-10 21:35 UTC (permalink / raw)
  To: mailing list for ConTeXt users

Hi,

I played a bit with these newcomputermodern fonts. They are extended 
versions of latin modern and come in:

- 10pt (serif, sane, mono, math)
- book (serif, sane, mono, math)
-  8pt (partial)

I made a typescript for the 10pt regular and book (as I see no reason to 
configure 8pt).  So, assuming that one installs these fonts:

\setupbodyfont[newcomputermodern-book]
\setupbodyfont[newcomputermodern]

should work ok. The book variant is quite nice. I didn't look into the 
provided math alternates (context supports that but I didn't define them 
for this font ... input from math lovers is welcome).

Now, this font also implements, as cambria does, upright integrals and 
as that has comes on my radar every year when I ponder these integrals I 
decided that it was about tiem to deal with it properly. It is no big 
deal to implement them gropwing (after all one can see them as left 
delimiter) but the main issue are these super and subscripts.

\setupbodyfont[newcomputermodern-book]
% \setupbodyfont[cambria]

\starttext

\startformula
     x = \integral^1_2 \mathinner{\vrule height 10mm depth 10mm width 5mm} =
     x = \integral^1_2 \mathinner{\vrule height 20mm depth 20mm width 5mm} =
     x = \integral^1_2 \mathinner{\vrule height 30mm depth 30mm width 5mm} =
     x = \integral^1_2 \mathinner{x} =
     x = \integral^1_2 x
\stopformula

\startformula
     x = \int\Umathadaptsize^1_2 \mathinner{\vrule height 10mm depth 
10mm width 5mm} =
     x = \int\Umathadaptsize^1_2 \mathinner{\vrule height 20mm depth 
20mm width 5mm} =
     x = \int\Umathadaptsize^1_2 \mathinner{\vrule height 30mm depth 
30mm width 5mm} =
     x = \int\Umathadaptsize^1_2 \mathinner{x} =
     x = \int\Umathadaptsize^1_2 x
\stopformula

\def\rab{\Umathchar"1"00"007C }

$
     x = \int\Umathadaptsize^1_2 \mathinner{\vrule height 10mm depth 
10mm width 5mm} =
     x = \int\Umathadaptsize^1_2 \mathinner{\vrule height 20mm depth 
20mm width 5mm} =
     x = \int\Umathadaptsize^1_2 \mathinner{\vrule height 30mm depth 
30mm width 5mm} =
     x = \int\Umathadaptsize^1_2 x =
     x = \rab\Umathadaptsize^1_2^^1__2 \mathinner{\vrule height 30mm 
depth 30mm width 5mm}
$

\stoptext

After playing with several solutions (delimiters, fences, radicals etc) 
I just settled for a few line extension to the engine (there was already 
plenty in place in luametatex for that anyway) and it seem to work ok.

This \Umathadaptsize is a bit like the limits related suffixes (and uses 
the same scanner logic). It basically flags an operator as something 
that should grow cf what follows. I can add some fine tuning if needed 
(can also be dealt with at the macro end, as with other mechanisms, but 
this is just a first test of useability).

(I might also extend another mechanism to deal with it but putting 
scripts on top or after is already handles pretty well by regular 
mechanisms, so ...)

Of course only a few fonts provide these upright growing integrals 
(makes me wonder about summation and product).

Concerning the newcm fonts: for some reason the book variants (otf 
files) are about twice as large (in filesize) but what we use (cached) 
is the same size (only bboxes differ) so there is something fishy in the 
otf. I can imagine that at some point we add the 10pt/book ones to the 
standard mkiv distribution and maybe only the subset to the lmtx 
distribution but for now these book ones are too big for that, but it 
all depende on them being used.

Happy testing (hopefully there are no side effects).

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
___________________________________________________________________________________

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2021-06-11 15:03 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-06-10 21:35 upload / some new math stuff Hans Hagen
2021-06-11  7:54 ` Mikael Sundqvist
2021-06-11 10:23   ` Fabrice Couvreur
2021-06-11 11:05     ` Hans Hagen
2021-06-11 13:22 ` Alan Braslau
2021-06-11 15:02   ` Hans Hagen
2021-06-11 15:03 ` Pablo Rodriguez

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).