summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/heros-otf/heros-otf.sty
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/latex/heros-otf/heros-otf.sty')
-rw-r--r--Master/texmf-dist/tex/latex/heros-otf/heros-otf.sty449
1 files changed, 449 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/heros-otf/heros-otf.sty b/Master/texmf-dist/tex/latex/heros-otf/heros-otf.sty
new file mode 100644
index 00000000000..73015c7229e
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/heros-otf/heros-otf.sty
@@ -0,0 +1,449 @@
+%% $Id: heros-otf.sty 624 2022-10-13 09:18:22Z herbert $
+%%
+%% This file is distributed under the terms of the LaTeX Project Public
+%% License from CTAN archives in directory macros/latex/base/lppl.txt.
+%% Either version 1.3 or, at your option, any later version.
+%%
+%
+%
+\ProvidesPackage{heros-otf}[%
+ 2022/10/13 v. 0.01 (Herbert Voss) Supports heros fonts for lualatex and xelatex.]
+
+\RequirePackage{iftex,xkeyval,textcomp}
+
+\newif\ifheros@lining \heros@liningtrue
+\newif\ifheros@tabular \heros@tabulartrue
+\newif\ifheros@usefilenames \heros@usefilenamestrue
+\newif\ifheros@condensed \heros@condensedfalse
+
+\DeclareOptionX{lining}[true]{\@nameuse{heros@lining#1}}
+\DeclareOptionX{nf}[true]{\@nameuse{heros@lining#1}}
+\DeclareOptionX{lf}[true]{\@nameuse{heros@lining#1}}
+\DeclareOptionX{oldstyle}[true]{\@nameuse{if#1}\heros@liningfalse\else\heros@liningtrue\fi}
+\DeclareOptionX{osf}[true]{\@nameuse{if#1}\heros@liningfalse\else\heros@liningtrue\fi}
+
+\DeclareOptionX{condensed}{\heros@condensedtrue}
+\DeclareOptionX{default}{\renewcommand\familydefault{\sfdefault}}
+
+\DeclareOptionX{usefilenames}[true]{\@nameuse{heros@usefilenames#1}}
+
+\DeclareOptionX{tabular}[true]{\@nameuse{heros@tabular#1}}
+\DeclareOptionX{t}[true]{\@nameuse{heros@tabular#1}}
+\DeclareOptionX{proportional}[true]{\@nameuse{if#1}\heros@tabularfalse\else\heros@tabulartrue\fi}
+\DeclareOptionX{p}[true]{\@nameuse{if#1}\heros@tabularfalse\else\heros@tabulartrue\fi}
+
+\newcommand*\herosSF@scale{1}
+\DeclareOptionX{ScaleSF}{\renewcommand*{\herosSF@scale}{#1}}
+
+\def\heros@defaultfeatures{}
+\DeclareOptionX{defaultfeatures}{\def\heros@defaultfeatures{#1}}
+
+\ProcessOptionsX\relax
+
+\RequirePackage{fontspec}
+
+\ifheros@lining
+ \def\heros@figurestyle{+lnum;-onum}
+\else
+ \def\heros@figurestyle{+onum;-lnum}
+\fi
+
+\ifheros@tabular
+ \def\heros@figurealign{+tnum}
+\else
+ \def\heros@figurealign{+pnum}
+\fi
+
+\ifxetex\XeTeXtracingfonts=1\fi
+\defaultfontfeatures[\sffamily]{
+ Ligatures = TeX ,
+ SmallCapsFeatures={Letters=SmallCaps},% \ifluatex,Renderer=Basic\fi},
+ \heros@defaultfeatures
+}
+
+\ifheros@usefilenames
+%------------------------ filenames start -------------------------
+
+%texgyreheros-bold.otf texgyreheros-italic.otf
+%texgyreheros-bolditalic.otf texgyreheros-regular.otf
+
+\ifheros@condensed
+\setsansfont{texgyreheroscn}[
+ RawFeature = {\heros@figurealign;\heros@figurestyle},
+ Scale = \herosSF@scale,
+ UprightFont = *-regular,
+ ItalicFont = *-italic,
+ ItalicFeatures = { SmallCapsFont = *-italic },
+ SlantedFont = *-regular,
+ SlantedFeatures= {FakeSlant=0.2},
+ BoldFont = *-bold,
+ BoldFeatures = { SmallCapsFont = *-bold },
+ BoldItalicFont = *-bolditalic,
+ BoldItalicFeatures = { SmallCapsFont = *-bolditalic },
+ BoldSlantedFont= *-bold,
+ BoldSlantedFeatures= {FakeSlant=0.2, SmallCapsFont = *-bold },
+ SmallCapsFont = *-regular,
+% SmallCapsFeatures={RawFeature=+smcp},
+ SmallCapsFeatures={Letters=SmallCaps},
+ Extension = .otf
+]
+\else
+\setsansfont{texgyreheros}[
+ RawFeature = {\heros@figurealign;\heros@figurestyle},
+ Scale = \herosSF@scale,
+ UprightFont = *-regular,
+ ItalicFont = *-italic,
+ ItalicFeatures = { SmallCapsFont = *-italic },
+ SlantedFont = *-regular,
+ SlantedFeatures= {FakeSlant=0.2},
+ BoldFont = *-bold,
+ BoldFeatures = { SmallCapsFont = *-bold },
+ BoldItalicFont = *-bolditalic,
+ BoldItalicFeatures = { SmallCapsFont = *-bolditalic },
+ BoldSlantedFont= *-bold,
+ BoldSlantedFeatures= {FakeSlant=0.2, SmallCapsFont = *-bold },
+ SmallCapsFont = *-regular,
+% SmallCapsFeatures={RawFeature=+smcp},
+ SmallCapsFeatures={Letters=SmallCaps},
+ Extension = .otf
+]
+\newfontfamily\heroscn{texgyreheroscn}[
+ RawFeature = {\heros@figurealign;\heros@figurestyle},
+ Scale = \herosSF@scale,
+ UprightFont = *-regular,
+ ItalicFont = *-italic,
+ ItalicFeatures = { SmallCapsFont = *-italic },
+ SlantedFont = *-regular,
+ SlantedFeatures= {FakeSlant=0.2},
+ BoldFont = *-bold,
+ BoldFeatures = { SmallCapsFont = *-bold },
+ BoldItalicFont = *-bolditalic,
+ BoldItalicFeatures = { SmallCapsFont = *-bolditalic },
+ BoldSlantedFont= *-bold,
+ BoldSlantedFeatures= {FakeSlant=0.2, SmallCapsFont = *-bold },
+ SmallCapsFont = *-regular,
+% SmallCapsFeatures={RawFeature=+smcp},
+ SmallCapsFeatures={Letters=SmallCaps},
+ Extension = .otf
+]
+\fi
+
+\newfontfamily\heros{texgyreheros}[
+ RawFeature = {\heros@figurealign;\heros@figurestyle},
+ Scale = \herosSF@scale,
+ UprightFont = *-regular,
+ ItalicFont = *-italic,
+ ItalicFeatures = { SmallCapsFont = *-italic },
+ SlantedFont = *-regular,
+ SlantedFeatures= {FakeSlant=0.2},
+ BoldFont = *-bold,
+ BoldFeatures = { SmallCapsFont = *-bold },
+ BoldItalicFont = *-bolditalic,
+ BoldItalicFeatures = { SmallCapsFont = *-bolditalic },
+ BoldSlantedFont= *-bold,
+ BoldSlantedFeatures= {FakeSlant=0.2, SmallCapsFont = *-bold },
+ SmallCapsFont = *-regular,
+% SmallCapsFeatures={RawFeature=+smcp},
+ SmallCapsFeatures={Letters=SmallCaps},
+ Extension = .otf
+]
+
+\newfontfamily\herosOsF{texgyreheros}[
+ RawFeature = {+onum},
+ Scale = \herosSF@scale ,
+ UprightFont = *-regular,
+ ItalicFont = *-italic,
+ ItalicFeatures = { SmallCapsFont = *-italic },
+ SlantedFont = *-regular,
+ SlantedFeatures= {FakeSlant=0.2},
+ BoldFont = *-bold,
+ BoldFeatures = { SmallCapsFont = *-bold },
+ BoldItalicFont = *-bolditalic,
+ BoldItalicFeatures = { SmallCapsFont = *-bolditalic },
+ BoldSlantedFont= *-bold,
+ BoldSlantedFeatures= {FakeSlant=0.2, SmallCapsFont = *-bold },
+ SmallCapsFont = *-regular,
+% SmallCapsFeatures={RawFeature=+smcp},
+ SmallCapsFeatures={Letters=SmallCaps},
+ Extension = .otf
+]
+\newfontfamily\heroscnOsF{texgyreheroscn}[
+ RawFeature = {+onum},
+ Scale = \herosSF@scale ,
+ UprightFont = *-regular,
+ ItalicFont = *-italic,
+ ItalicFeatures = { SmallCapsFont = *-italic },
+ SlantedFont = *-regular,
+ SlantedFeatures= {FakeSlant=0.2},
+ BoldFont = *-bold,
+ BoldFeatures = { SmallCapsFont = *-bold },
+ BoldItalicFont = *-bolditalic,
+ BoldItalicFeatures = { SmallCapsFont = *-bolditalic },
+ BoldSlantedFont= *-bold,
+ BoldSlantedFeatures= {FakeSlant=0.2, SmallCapsFont = *-bold },
+ SmallCapsFont = *-regular,
+% SmallCapsFeatures={RawFeature=+smcp},
+ SmallCapsFeatures={Letters=SmallCaps},
+ Extension = .otf
+]
+
+\newfontfamily\herosTLF{texgyreheros}[
+ RawFeature = {+tnum;-onum},
+ Scale = \herosSF@scale ,
+ UprightFont = *-regular,
+ ItalicFont = *-italic,
+ ItalicFeatures = { SmallCapsFont = *-italic },
+ SlantedFont = *-regular,
+ SlantedFeatures= {FakeSlant=0.2},
+ BoldFont = *-bold,
+ BoldFeatures = { SmallCapsFont = *-bold },
+ BoldItalicFont = *-bolditalic,
+ BoldItalicFeatures = { SmallCapsFont = *-bolditalic },
+ BoldSlantedFont= *-bold,
+ BoldSlantedFeatures= {FakeSlant=0.2, SmallCapsFont = *-bold },
+ SmallCapsFont = *-regular,
+% SmallCapsFeatures={RawFeature=+smcp},
+ SmallCapsFeatures={Letters=SmallCaps},
+ Extension = .otf
+]
+\newfontfamily\heroscnTLF{texgyreheroscn}[
+ RawFeature = {+tnum;-onum},
+ Scale = \herosSF@scale ,
+ UprightFont = *-regular,
+ ItalicFont = *-italic,
+ ItalicFeatures = { SmallCapsFont = *-italic },
+ SlantedFont = *-regular,
+ SlantedFeatures= {FakeSlant=0.2},
+ BoldFont = *-bold,
+ BoldFeatures = { SmallCapsFont = *-bold },
+ BoldItalicFont = *-bolditalic,
+ BoldItalicFeatures = { SmallCapsFont = *-bolditalic },
+ BoldSlantedFont= *-bold,
+ BoldSlantedFeatures= {FakeSlant=0.2, SmallCapsFont = *-bold },
+ SmallCapsFont = *-regular,
+% SmallCapsFeatures={RawFeature=+smcp},
+ SmallCapsFeatures={Letters=SmallCaps},
+ Extension = .otf
+]
+%------------------------ filenames stop -------------------------
+\else
+%------------------------ symbolic names start -------------------------
+\ifheros@condensed
+\setsansfont{TeX Gyre Heros Condensed}[
+ RawFeature = {\heros@figurealign,\heros@figurestyle},
+ Scale = \herosSF@scale ,
+ UprightFont = * Regular,
+ SlantedFont = * Regular,
+ SlantedFeatures = {FakeSlant=0.2},
+ ItalicFont = * Italic,
+ ItalicFeatures = { SmallCapsFont = * Italic },
+ BoldFont = * Bold,
+ BoldFeatures = { SmallCapsFont = * Bold },
+ BoldItalicFont = * Bold Italic,
+ BoldItalicFeatures= { SmallCapsFont = * Bold Italic },
+ SmallCapsFont = * Regular,
+ SmallCapsFeatures = {RawFeature=+smcp},
+ BoldSlantedFont = * Bold,
+ BoldSlantedFeatures = {FakeSlant=0.2, SmallCapsFont = * Bold },
+ SmallCapsFeatures = {Letters=SmallCaps},
+]
+
+\else
+\setsansfont{TeX Gyre Heros}[
+ RawFeature = {\heros@figurealign,\heros@figurestyle},
+ Scale = \herosSF@scale ,
+ UprightFont = * Regular,
+ SlantedFont = * Regular,
+ SlantedFeatures = {FakeSlant=0.2},
+ ItalicFont = * Italic,
+ ItalicFeatures = { SmallCapsFont = * Italic },
+ BoldFont = * Bold,
+ BoldFeatures = { SmallCapsFont = * Bold },
+ BoldItalicFont = * Bold Italic,
+ BoldItalicFeatures= { SmallCapsFont = * Bold Italic },
+ SmallCapsFont = * Regular,
+ SmallCapsFeatures = {RawFeature=+smcp},
+ BoldSlantedFont = * Bold,
+ BoldSlantedFeatures = {FakeSlant=0.2, SmallCapsFont = * Bold },
+ SmallCapsFeatures = {Letters=SmallCaps},
+]
+\fi
+\newfontfamily\heros{TeX Gyre Heros}[
+ RawFeature = {\heros@figurealign,\heros@figurestyle},
+ Scale = \herosSF@scale ,
+ UprightFont = * Regular,
+ SlantedFont = * Regular,
+ SlantedFeatures = {FakeSlant=0.2},
+ ItalicFont = * Italic,
+ ItalicFeatures = { SmallCapsFont = * Italic },
+ BoldFont = * Bold,
+ BoldFeatures = { SmallCapsFont = * Bold },
+ BoldItalicFont = * Bold Italic,
+ BoldItalicFeatures= { SmallCapsFont = * Bold Italic },
+ SmallCapsFont = * Regular,
+ SmallCapsFeatures = {RawFeature=+smcp},
+ BoldSlantedFont = * Bold,
+ BoldSlantedFeatures = {FakeSlant=0.2, SmallCapsFont = * Bold },
+ SmallCapsFeatures = {Letters=SmallCaps},
+]
+\newfontfamily\heroscn{TeX Gyre Heros Condensed}[
+ RawFeature = {\heros@figurealign,\heros@figurestyle},
+ Scale = \herosSF@scale ,
+ UprightFont = * Regular,
+ SlantedFont = * Regular,
+ SlantedFeatures = {FakeSlant=0.2},
+ ItalicFont = * Italic,
+ ItalicFeatures = { SmallCapsFont = * Italic },
+ BoldFont = * Bold,
+ BoldFeatures = { SmallCapsFont = * Bold },
+ BoldItalicFont = * Bold Italic,
+ BoldItalicFeatures= { SmallCapsFont = * Bold Italic },
+ SmallCapsFont = * Regular,
+ SmallCapsFeatures = {RawFeature=+smcp},
+ BoldSlantedFont = * Bold,
+ BoldSlantedFeatures = {FakeSlant=0.2, SmallCapsFont = * Bold },
+ SmallCapsFeatures = {Letters=SmallCaps},
+]
+\newfontfamily\herosOsF{TeX Gyre Heros}[
+ RawFeature = {OldStyle,Proportional},
+ Scale = \herosSF@scale ,
+ UprightFont = * Regular,
+ SlantedFont = * Regular,
+ SlantedFeatures = {FakeSlant=0.2},
+ ItalicFont = * Italic,
+ ItalicFeatures = { SmallCapsFont = * Italic },
+ BoldFont = * Bold,
+ BoldFeatures = { SmallCapsFont = * Bold },
+ BoldItalicFont = * Bold Italic,
+ BoldItalicFeatures= { SmallCapsFont = * Bold Italic },
+ SmallCapsFont = * Regular,
+ SmallCapsFeatures = {RawFeature=+smcp},
+ BoldSlantedFont = * Bold,
+ BoldSlantedFeatures = {FakeSlant=0.2, SmallCapsFont = * Bold },
+ SmallCapsFeatures = {Letters=SmallCaps},
+]
+\newfontfamily\heroscnOsF{TeX Gyre Heros}[
+ RawFeature = {OldStyle,Proportional},
+ Scale = \herosSF@scale ,
+ UprightFont = * Regular,
+ SlantedFont = * Regular,
+ SlantedFeatures = {FakeSlant=0.2},
+ ItalicFont = * Italic,
+ ItalicFeatures = { SmallCapsFont = * Italic },
+ BoldFont = * Bold,
+ BoldFeatures = { SmallCapsFont = * Bold },
+ BoldItalicFont = * Bold Italic,
+ BoldItalicFeatures= { SmallCapsFont = * Bold Italic },
+ SmallCapsFont = * Regular,
+ SmallCapsFeatures = {RawFeature=+smcp},
+ BoldSlantedFont = * Bold,
+ BoldSlantedFeatures = {FakeSlant=0.2, SmallCapsFont = * Bold },
+ SmallCapsFeatures = {Letters=SmallCaps},
+]
+
+\newfontfamily\herosTLF{TeX Gyre Heros}[
+ RawFeature = {Lining,Monospaced},
+ Scale = \herosSF@scale ,
+ UprightFont = * Regular,
+ SlantedFont = * Regular,
+ SlantedFeatures = {FakeSlant=0.2},
+ ItalicFont = * Italic,
+ ItalicFeatures = { SmallCapsFont = * Italic },
+ BoldFont = * Bold,
+ BoldFeatures = { SmallCapsFont = * Bold },
+ BoldItalicFont = * Bold Italic,
+ BoldItalicFeatures= { SmallCapsFont = * Bold Italic },
+ SmallCapsFont = * Regular,
+ SmallCapsFeatures = {RawFeature=+smcp},
+ BoldSlantedFont = * Bold,
+ BoldSlantedFeatures = {FakeSlant=0.2, SmallCapsFont = * Bold },
+ SmallCapsFeatures = {Letters=SmallCaps},
+]
+\newfontfamily\heroscnTLF{TeX Gyre Heros}[
+ RawFeature = {Lining,Monospaced},
+ Scale = \herosSF@scale ,
+ UprightFont = * Regular,
+ SlantedFont = * Regular,
+ SlantedFeatures = {FakeSlant=0.2},
+ ItalicFont = * Italic,
+ ItalicFeatures = { SmallCapsFont = * Italic },
+ BoldFont = * Bold,
+ BoldFeatures = { SmallCapsFont = * Bold },
+ BoldItalicFont = * Bold Italic,
+ BoldItalicFeatures= { SmallCapsFont = * Bold Italic },
+ SmallCapsFont = * Regular,
+ SmallCapsFeatures = {RawFeature=+smcp},
+ BoldSlantedFont = * Bold,
+ BoldSlantedFeatures = {FakeSlant=0.2, SmallCapsFont = * Bold },
+ SmallCapsFeatures = {Letters=SmallCaps},
+]
+
+\fi
+%------------------------ symbolic names stop -------------------------
+
+%\ifheros@nomath\else
+% \typeout{*************************************^^J%
+% * Using heros math *^^J%
+% *************************************}%
+%\setmathfont{texgyreheros-math.otf}[AutoFakeBold,RawFeature=\herosMM@feature]
+%\fi
+
+\def\sufigures{\addfontfeatures{VerticalPosition=Superior}}
+\DeclareTextFontCommand{\textsup}{\sufigures}
+\DeclareTextFontCommand{\textinit}{\herosInitials}% Initials
+
+\def\Lsup#1{{\addfontfeature{RawFeature=+sups}#1}}
+\def\Lsinf#1{{\addfontfeature{RawFeature=+sinf}#1}}
+\def\Land{{\addfontfeature{RawFeature=+ss06}\&}}
+
+\def\Lcase#1{{\addfontfeature{RawFeature=case}#1}}
+\def\LCASE{\@ifnextchar-\L@CASE\L@@CASE}
+\def\L@CASE-{\addfontfeature{RawFeature=-case}}
+\def\L@@CASE#1{\addfontfeature{RawFeature=+case}\ifx#1+\else#1\fi}
+
+\def\Lfrac#1{{\addfontfeature{RawFeature=+frac}#1}}
+\def\LFRAC{\@ifnextchar-\L@FRAC\L@@FRAC}
+\def\L@FRAC-{\addfontfeature{RawFeature=-frac}}
+\def\L@@FRAC#1{\addfontfeature{RawFeature=+frac}\ifx#1+\else#1\fi}
+
+\def\Lcpsp#1{{\addfontfeature{RawFeature=+cpsp}#1}}
+\def\LCPSP{\@ifnextchar-\L@CPSP\L@@CPSP}
+\def\L@CPSP-{\addfontfeature{RawFeature=-cpsp}}
+\def\L@@CPSP#1{\addfontfeature{RawFeature=+cpsp}\ifx#1+\else#1\fi}
+
+\def\Lss#1#2#3{{\addfontfeature{RawFeature=+ss#1#2}#3}}
+\def\LSS#1#2{\addfontfeature{RawFeature=+ss#1#2}}
+
+\def\Lctosc#1{{\addfontfeature{RawFeature=+c2sc}#1}}
+\def\LCtoSC{\@ifnextchar-\L@CtoSC\L@@CtoSC}
+\def\L@CtoSC-{\addfontfeature{RawFeature=-c2sc}}
+\def\L@@CtoSC#1{\addfontfeature{RawFeature=+c2sc}\ifx#1+\else#1\fi}
+
+\def\Lctosmcp#1{{\addfontfeature{RawFeature={+c2sc,+smcp}}#1}}
+\def\LCtoSMCP{\@ifnextchar-\L@CtoSMCP\L@@CtoSMCP}
+\def\L@CtoSMCP-{\addfontfeature{RawFeature={-c2sc,-smcp}}}
+\def\L@@CtoSMCP#1{\addfontfeature{RawFeature={+c2sc,+smcp}}\ifx#1+\else#1\fi}
+
+\def\Lsalt#1{{\addfontfeature{RawFeature=+salt}#1}}
+\def\LSALT{\@ifnextchar-\L@SALT\L@@SALT}
+\def\L@SALT-{\addfontfeature{RawFeature=-salt}}
+\def\L@@SALT#1{\addfontfeature{RawFeature=+salt}\ifx#1+\else#1\fi}
+
+\def\Lliga#1{{\addfontfeature{RawFeature=+liga}#1}}
+\def\LLIGA{\@ifnextchar-\L@LIGA\L@@LIGA}
+\def\L@LIGA-{\addfontfeature{RawFeature=-liga}}
+\def\L@@LIGA#1{\addfontfeature{RawFeature=+liga}\ifx#1+\else#1\fi}
+
+
+\def\Lhlig#1{{\addfontfeature{RawFeature=+hlig}#1}}
+\def\LHLIG{\@ifnextchar-\L@HLIG\L@@HLIG}
+\def\L@HLIG-{\addfontfeature{RawFeature=-hlig}}
+\def\L@@HLIG#1{\addfontfeature{RawFeature=+hlig}\ifx#1+\else#1\fi}
+
+\def\Ldlig#1{{\addfontfeature{RawFeature=+dlig}#1}}
+\def\LDLIG{\@ifnextchar-\L@DLIG\L@@DLIG}
+\def\L@DLIG-{\addfontfeature{RawFeature=-dlig}}
+\def\L@@DLIG#1{\addfontfeature{RawFeature=+dlig}\ifx#1+\else#1\fi}
+
+\endinput
+