From: Hans Hagen <pragma@wxs.nl>
Cc: Michel Bovani <michel.bovani@wanadoo.fr>
Subject: fourier
Date: Fri, 19 Sep 2003 13:54:46 +0200 [thread overview]
Message-ID: <5.2.0.9.1.20030919134352.020162b0@server-1> (raw)
Hi,
I've added support for the excelent new fourier fonts by Michel Bovani,
based on utopia. So, we have another math font!
\usetypescript[fourier][ec] \setupbodyfont[fourier]
\starttext test $x=1+\sqrt{x}$ test \type {test} \stoptext
I expect math experts to look into math-fou.tex and complete the vectors.
== from here only for font lovers ==
Now, since these fonts have quite some expert and oldstyle options, it
makes sense to think of how to use them.
Michel cleverly defined:
\definefontsynonym [Fourier-Regular] [futr8t] [encoding=ec]
\definefontsynonym [Fourier-Slanted] [futro8t] [encoding=ec]
\definefontsynonym [Fourier-Italic] [futri8t] [encoding=ec]
\definefontsynonym [Fourier-RegularCaps] [futrc8t] [encoding=ec]
\definefontsynonym [Fourier-Bold] [futb8t] [encoding=ec]
\definefontsynonym [Fourier-BoldSlanted] [futbo8t] [encoding=ec]
\definefontsynonym [Fourier-BoldItalic] [futbi8t] [encoding=ec]
\definefontsynonym [Fourier-BoldCaps] [futbc8t] [encoding=ec]
\definefontsynonym [Fourier-Regular-Expert] [futr9e] [encoding=ec]
\definefontsynonym [Fourier-Slanted-Expert] [futro9e] [encoding=ec]
\definefontsynonym [Fourier-Italic-Expert] [futri9e] [encoding=ec]
\definefontsynonym [Fourier-RegularCaps-Expert] [futrc9e] [encoding=ec]
\definefontsynonym [Fourier-Semi-Expert] [futs9e] [encoding=ec]
\definefontsynonym [Fourier-SemiSlanted-Expert] [futso9e] [encoding=ec]
\definefontsynonym [Fourier-SemiItalic-Expert] [futsi9e] [encoding=ec]
\definefontsynonym [Fourier-SemiCaps-Expert] [futsc9e] [encoding=ec]
\definefontsynonym [Fourier-Bold-Expert] [futb9e] [encoding=ec]
\definefontsynonym [Fourier-BoldSlanted-Expert] [futbo9e] [encoding=ec]
\definefontsynonym [Fourier-BoldItalic-Expert] [futbi9e] [encoding=ec]
\definefontsynonym [Fourier-Black-Expert] [futc9e] [encoding=ec]
\definefontsynonym [Fourier-Regular-OldStyle] [futr9d] [encoding=ec]
\definefontsynonym [Fourier-Slanted-OldStyle] [futro9d] [encoding=ec]
\definefontsynonym [Fourier-Italic-OldStyle] [futri9d] [encoding=ec]
\definefontsynonym [Fourier-RegularCaps-OldStyle] [futrc9d] [encoding=ec]
\definefontsynonym [Fourier-Semi-OldStyle] [futs9d] [encoding=ec]
\definefontsynonym [Fourier-SemiSlanted-OldStyle] [futso9d] [encoding=ec]
\definefontsynonym [Fourier-SemiItalic-OldStyle] [futsi9d] [encoding=ec]
\definefontsynonym [Fourier-SemiCaps-OldStyle] [futsc9d] [encoding=ec]
\definefontsynonym [Fourier-Bold-OldStyle] [futb9d] [encoding=ec]
\definefontsynonym [Fourier-BoldSlanted-OldStyle] [futbo9d] [encoding=ec]
\definefontsynonym [Fourier-BoldItalic-OldStyle] [futbi9d] [encoding=ec]
\definefontsynonym [Fourier-Black-OldStyle] [futc9d] [encoding=ec]
and
\definefontsynonym [Serif] [Fourier-Regular]
\definefontsynonym [SerifSlanted] [Fourier-Slanted]
\definefontsynonym [SerifItalic] [Fourier-Italic]
\definefontsynonym [SerifCaps] [Fourier-RegularCaps]
\definefontsynonym [SerifBold] [Fourier-Bold]
\definefontsynonym [SerifBoldSlanted] [Fourier-BoldSlanted]
\definefontsynonym [SerifBoldItalic] [Fourier-BoldItalic]
\definefontsynonym [SerifBoldCaps] [Fourier-BoldCaps]
\definefontsynonym
[Serif-Expert] [Fourier-Regular-Expert]
\definefontsynonym
[SerifSlanted-Expert] [Fourier-Slanted-Expert]
\definefontsynonym [SerifItalic-Expert] [Fourier-Italic-Expert]
\definefontsynonym [SerifCaps-Expert] [Fourier-RegularCaps-Expert]
\definefontsynonym [SerifSemiBold-Expert] [Fourier-Semi-Expert]
\definefontsynonym [SerifSemiSlanted-Expert] [Fourier-SemiSlanted-Expert]
\definefontsynonym [SerifSemiItalic-Expert] [Fourier-SemiItalic-Expert]
\definefontsynonym [SerifSemiCaps-Expert] [Fourier-SemiCaps-Expert]
\definefontsynonym [SerifBold-Expert] [Fourier-Bold-Expert]
\definefontsynonym
[SerifBoldSlanted-Expert] [Fourier-BoldSlanted-Expert]
\definefontsynonym [SerifBoldItalic-Expert] [Fourier-BoldItalic-Expert]
\definefontsynonym [SerifBlack-Expert] [Fourier-Black-Expert]
\definefontsynonym [Serif-OldStyle] [Fourier-Regular-OldStyle]
\definefontsynonym [SerifSlanted-OldStyle] [Fourier-Slanted-OldStyle]
\definefontsynonym [SerifItalic-OldStyle] [Fourier-Italic-OldStyle]
\definefontsynonym [SerifCaps-OldStyle] [Fourier-RegularCaps-OldStyle]
\definefontsynonym [SerifSemiBold-OldStyle] [Fourier-Semi-OldStyle]
\definefontsynonym [SerifSemiSlanted-OldStyle]
[Fourier-SemiSlanted-OldStyle]
\definefontsynonym
[SerifSemiItalic-OldStyle] [Fourier-SemiItalic-OldStyle]
\definefontsynonym
[SerifSemiCaps-OldStyle] [Fourier-SemiCaps-OldStyle]
\definefontsynonym [SerifBold-OldStyle] [Fourier-Bold-OldStyle]
\definefontsynonym [SerifBoldSlanted-OldStyle]
[Fourier-BoldSlanted-OldStyle]
\definefontsynonym
[SerifBoldItalic-OldStyle] [Fourier-BoldItalic-OldStyle]
\definefontsynonym [SerifBlack-OldStyle] [Fourier-Black-OldStyle]
\definefontsynonym
[SerifBlackSlanted-OldStyle] [Fourier-BlackSlanted-OldStyle]
with
\definebodyfont
[17.3pt,14.4pt,12pt,11pt,10pt,9pt,8pt,7pt,6pt,5pt,4pt]
[rm] [ tf=Serif sa 1,
it=SerifItalic sa 1,
sl=SerifSlanted sa 1,
sc=SerifCaps sa 1,
bf=SerifBold sa 1,
bi=SerifBoldItalic sa 1,
bs=SerifBoldSlanted sa 1,
bc=SerifBoldCaps sa 1,
bca=SerifBoldCaps sa a,
bcb=SerifBoldCaps sa b,
bcc=SerifBoldCaps sa c,
bcd=SerifBoldCaps sa d,
bcx=SerifBoldCaps sa x,
bcxx=SerifBoldCaps sa xx
]
\definebodyfont
[17.3pt,14.4pt,12pt,11pt,10pt,9pt,8pt,7pt,6pt,5pt,4pt]
[rmx] [ tf=Serif-Expert sa 1,
it=SerifItalic-Expert sa 1,
sl=SerifSlanted-Expert sa 1,
sc=SerifCaps-Expert sa 1,
db=SerifSemiBold-Expert sa 1,
dba=SerifSemiBold-Expert sa a,dbb=SerifSemiBold-Expert sa b,
dbc=SerifSemiBold-Expert sa c,dbd=SerifSemiBold-Expert sa d,
dbx=SerifSemiBold-Expert sa x,dbxx=SerifSemiBold-Expert sa xx,
di=SerifSemiItalic-Expert sa 1,
dia=SerifSemiItalic-Expert sa a,dib=SerifSemiItalic-Expert sa b,
dic=SerifSemiItalic-Expert sa c,did=SerifSemiItalic-Expert sa d,
dix=SerifSemiItalic-Expert sa x,dixx=SerifSemiItalic-Expert sa xx,
ds=SerifSemiSlanted-Expert sa 1,
dsa=SerifSemiSlanted-Expert sa a,dsb=SerifSemiSlanted-Expert sa b,
dsc=SerifSemiSlanted-Expert sa c,dsd=SerifSemiSlanted-Expert sa d,
dsx=SerifSemiSlanted-Expert sa x,dsxx=SerifSemiSlanted-Expert sa xx,
dc=SerifSemiCaps-Expert sa 1,
dca=SerifSemiCaps-Expert sa a,dcb=SerifSemiCaps-Expert sa b,
dcc=SerifSemiCaps-Expert sa c,dcd=SerifSemiCaps-Expert sa d,
dcx=SerifSemiCaps-Expert sa x,dcxx=SerifSemiCaps-Expert sa xx,
bf=SerifBold-Expert sa 1,
bi=SerifBoldItalic-Expert sa 1,
bs=SerifBoldSlanted-Expert sa 1,
eb=SerifBlack-Expert sa 1,
eba=SerifBlack-Expert sa a,ebb=SerifBlack-Expert sa b,
ebc=SerifBlack-Expert sa c,ebd=SerifBlack-Expert sa d,
ebx=SerifBlack-Expert sa x,ebxx=SerifBlack-Expert sa xx
]
\definebodyfont
[17.3pt,14.4pt,12pt,11pt,10pt,9pt,8pt,7pt,6pt,5pt,4pt]
[rmo] [ tf=Serif-OldStyle sa 1,
it=SerifItalic-OldStyle sa 1,
sl=SerifSlanted-OldStyle sa 1,
sc=SerifCaps-OldStyle sa 1,
db=SerifSemiBold-OldStyle sa 1,
dba=SerifSemiBold-OldStyle sa a,dbb=SerifSemiBold-OldStyle sa b,
dbc=SerifSemiBold-OldStyle sa c,dbd=SerifSemiBold-OldStyle sa d,
dbx=SerifSemiBold-OldStyle sa x,dbxx=SerifSemiBold-OldStyle sa xx,
di=SerifSemiItalic-OldStyle sa 1,
dia=SerifSemiItalic-OldStyle sa a,dib=SerifSemiItalic-OldStyle sa b,
dic=SerifSemiItalic-OldStyle sa c,did=SerifSemiItalic-OldStyle sa d,
dix=SerifSemiItalic-OldStyle sa x,dixx=SerifSemiItalic-OldStyle sa xx,
ds=SerifSemiSlanted-OldStyle sa 1,
dsa=SerifSemiSlanted-OldStyle sa a,dsb=SerifSemiSlanted-OldStyle sa b,
dsc=SerifSemiSlanted-OldStyle sa c,dsd=SerifSemiSlanted-OldStyle sa d,
dsx=SerifSemiSlanted-OldStyle sa x,dsxx=SerifSemiSlanted-OldStyle sa xx,
dc=SerifSemiCaps-OldStyle sa 1,
dca=SerifSemiCaps-OldStyle sa a,dcb=SerifSemiCaps-OldStyle sa b,
dcc=SerifSemiCaps-OldStyle sa c,dcd=SerifSemiCaps-OldStyle sa d,
dcx=SerifSemiCaps-OldStyle sa x,dcxx=SerifSemiCaps-OldStyle sa xx,
eb=SerifBlack-OldStyle sa 1,
eba=SerifBlack-OldStyle sa a,ebb=SerifBlack-OldStyle sa b,
ebc=SerifBlack-OldStyle sa c,ebd=SerifBlack-OldStyle sa d,
ebx=SerifBlack-OldStyle sa x,ebxx=SerifBlack-OldStyle sa xx,
bf=SerifBold-OldStyle sa 1,
bi=SerifBoldItalic-OldStyle sa 1,
bs=SerifBoldSlanted-OldStyle sa 1
]
the following works quite well:
==== beware: it demonstrates that one can build much more font switches in
the low level mechanism than one would expect! ====
\rm
\midaligned{\bcc Standard}
{\tf Text1234} {\tfa Text1234} {\tfb Text1234} {\tfc Text1234} {\tfx
Text1234} {\tfxx Text1234}
{\it Text1234} {\ita Text1234} {\itb Text1234} {\itc Text1234} {\itx
Text1234} {\itxx Text1234}
{\sl Text1234} {\sla Text1234} {\slb Text1234} {\slc Text1234} {\slx
Text1234} {\slxx Text1234}
{\sc Text1234} {\sca Text1234} {\scb Text1234} {\scc Text1234} {\scx
Text1234} {\scxx Text1234}
{\bf Text1234} {\bfa Text1234} {\bfb Text1234} {\bfc Text1234} {\bfx
Text1234} {\bfxx Text1234}
{\bs Text1234} {\bsa Text1234} {\bsb Text1234} {\bsc Text1234} {\bsx
Text1234} {\bsxx Text1234}
{\bi Text1234} {\bia Text1234} {\bib Text1234} {\bic Text1234} {\bix
Text1234} {\bixx Text1234}
{\bc Text1234} {\bca Text1234} {\bcb Text1234} {\bcc Text1234} {\bcx
Text1234} {\bcxx Text1234}
\page
\rmx
\midaligned{\dcc Expert}
{\tf Text1234} {\tfa Text1234} {\tfb Text1234} {\tfc Text1234} {\tfx
Text1234} {\tfxx Text1234}
{\it Text1234} {\ita Text1234} {\itb Text1234} {\itc Text1234} {\itx
Text1234} {\itxx Text1234}
{\sl Text1234} {\sla Text1234} {\slb Text1234} {\slc Text1234} {\slx
Text1234} {\slxx Text1234}
{\sc Text1234} {\sca Text1234} {\scb Text1234} {\scc Text1234} {\scx
Text1234} {\scxx Text1234}
{\bf Text1234} {\bfa Text1234} {\bfb Text1234} {\bfc Text1234} {\bfx
Text1234} {\bfxx Text1234}
{\bs Text1234} {\bsa Text1234} {\bsb Text1234} {\bsc Text1234} {\bsx
Text1234} {\bsxx Text1234}
{\bi Text1234} {\bia Text1234} {\bib Text1234} {\bic Text1234} {\bix
Text1234} {\bixx Text1234}
{\db Text1234} {\dba Text1234} {\dbb Text1234} {\dbc Text1234} {\dbx
Text1234} {\dbxx Text1234}
{\di Text1234} {\dia Text1234} {\dib Text1234} {\dic Text1234} {\dix
Text1234} {\dixx Text1234}
{\ds Text1234} {\dsa Text1234} {\dsb Text1234} {\dsc Text1234} {\dsx
Text1234} {\dsxx Text1234}
{\dc Text1234} {\dca Text1234} {\dcb Text1234} {\dcc Text1234} {\dcx
Text1234} {\dcxx Text1234}
{\eb Text1234} {\eba Text1234} {\ebb Text1234} {\ebc Text1234} {\ebx
Text1234} {\ebxx Text1234}
\page
\rmo
\midaligned{\dcc Old style}
{\tf Text1234} {\tfa Text1234} {\tfb Text1234} {\tfc Text1234} {\tfx
Text1234} {\tfxx Text1234}
{\it Text1234} {\ita Text1234} {\itb Text1234} {\itc Text1234} {\itx
Text1234} {\itxx Text1234}
{\sl Text1234} {\sla Text1234} {\slb Text1234} {\slc Text1234} {\slx
Text1234} {\slxx Text1234}
{\sc Text1234} {\sca Text1234} {\scb Text1234} {\scc Text1234} {\scx
Text1234} {\scxx Text1234}
{\bf Text1234} {\bfa Text1234} {\bfb Text1234} {\bfc Text1234} {\bfx
Text1234} {\bfxx Text1234}
{\bs Text1234} {\bsa Text1234} {\bsb Text1234} {\bsc Text1234} {\bsx
Text1234} {\bsxx Text1234}
{\bi Text1234} {\bia Text1234} {\bib Text1234} {\bic Text1234} {\bix
Text1234} {\bixx Text1234}
{\db Text1234} {\dba Text1234} {\dbb Text1234} {\dbc Text1234} {\dbx
Text1234} {\dbxx Text1234}
{\di Text1234} {\dia Text1234} {\dib Text1234} {\dic Text1234} {\dix
Text1234} {\dixx Text1234}
{\ds Text1234} {\dsa Text1234} {\dsb Text1234} {\dsc Text1234} {\dsx
Text1234} {\dsxx Text1234}
{\dc Text1234} {\dca Text1234} {\dcb Text1234} {\dcc Text1234} {\dcx
Text1234} {\dcxx Text1234}
{\eb Text1234} {\eba Text1234} {\ebb Text1234} {\ebc Text1234} {\ebx
Text1234} {\ebxx Text1234}
Now, another approach is to use typescripts and something
\definetypeface [fourier] [serif] [rm] [fourier] ...
\definetypeface [fourier-expert] [serif] [rm] [fourier-expert] ...
etc, i.e. let expert and oldstyel live in their own namespace
For that i need to add a couple of more general mappings and this si what
we should discuss:
how are we going to deal with 'black' 'oldstyle' 'expert' 'semi' in the
sense of prefixes and suffixes? Actually,
\definefontsynonym
[Serif-Expert] [Fourier-Regular-Expert]
\definefontsynonym
[SerifSlanted-Expert] [Fourier-Slanted-Expert]
\definefontsynonym [SerifItalic-Expert] [Fourier-Italic-Expert]
\definefontsynonym [SerifCaps-Expert] [Fourier-RegularCaps-Expert]
\definefontsynonym [SerifSemiBold-Expert] [Fourier-Semi-Expert]
\definefontsynonym [SerifSemiSlanted-Expert] [Fourier-SemiSlanted-Expert]
\definefontsynonym [SerifSemiItalic-Expert] [Fourier-SemiItalic-Expert]
\definefontsynonym [SerifSemiCaps-Expert] [Fourier-SemiCaps-Expert]
\definefontsynonym [SerifBold-Expert] [Fourier-Bold-Expert]
\definefontsynonym
[SerifBoldSlanted-Expert] [Fourier-BoldSlanted-Expert]
\definefontsynonym [SerifBoldItalic-Expert] [Fourier-BoldItalic-Expert]
\definefontsynonym [SerifBlack-Expert] [Fourier-Black-Expert]
can as well become
\definefontsynonym [Serif] [Fourier-Regular-Expert]
\definefontsynonym [SerifSlanted] [Fourier-Slanted-Expert]
\definefontsynonym [SerifItalic] [Fourier-Italic-Expert]
\definefontsynonym [SerifCaps] [Fourier-RegularCaps-Expert]
\definefontsynonym [SerifSemiBold] [Fourier-Semi-Expert]
\definefontsynonym [SerifSemiSlanted] [Fourier-SemiSlanted-Expert]
\definefontsynonym [SerifSemiItalic] [Fourier-SemiItalic-Expert]
\definefontsynonym [SerifSemiCaps] [Fourier-SemiCaps-Expert]
\definefontsynonym [SerifBold] [Fourier-Bold-Expert]
\definefontsynonym [SerifBoldSlanted] [Fourier-BoldSlanted-Expert]
\definefontsynonym [SerifBoldItalic] [Fourier-BoldItalic-Expert]
\definefontsynonym [SerifBlack] [Fourier-Black-Expert]
i.e. we don't need the -Expert here because it can live in a typeface; but
how to deal with Black and Semi?
Hans
-------------------------------------------------------------------------
Hans Hagen | PRAGMA ADE | pragma@wxs.nl
Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
tel: +31 (0)38 477 53 69 | fax: +31 (0)38 477 53 74 | www.pragma-ade.com
-------------------------------------------------------------------------
information: http://www.pragma-ade.com/roadmap.pdf
documentation: http://www.pragma-ade.com/showcase.pdf
-------------------------------------------------------------------------
next reply other threads:[~2003-09-19 11:54 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-09-19 11:54 Hans Hagen [this message]
2003-09-19 14:30 ` fourier Adam Lindsay
2003-09-19 19:25 ` fourier Henning Hraban Ramm
2003-09-19 19:18 ` fourier Henning Hraban Ramm
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=5.2.0.9.1.20030919134352.020162b0@server-1 \
--to=pragma@wxs.nl \
--cc=michel.bovani@wanadoo.fr \
--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).