diff options
Diffstat (limited to 'Master/texmf-dist/tex/latex/josefin/josefin.sty')
-rw-r--r-- | Master/texmf-dist/tex/latex/josefin/josefin.sty | 148 |
1 files changed, 148 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/josefin/josefin.sty b/Master/texmf-dist/tex/latex/josefin/josefin.sty new file mode 100644 index 00000000000..fbc35b1709f --- /dev/null +++ b/Master/texmf-dist/tex/latex/josefin/josefin.sty @@ -0,0 +1,148 @@ +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{josefin} + [2020/09/10 (Bob Tennent and autoinst) Style file for Josefin Sans fonts.] + +\RequirePackage{iftex,xkeyval} + +\newif\ifjosefin@ttf +\ifxetex + \josefin@ttftrue +\else\ifluatex + \josefin@ttftrue +\else % [pdf]LaTeX + \josefin@ttffalse +\fi\fi + +\newif\ifjosefin@medium \josefin@mediumfalse +\newif\ifjosefin@semibold \josefin@semiboldfalse +\newif\ifjosefin@light \josefin@lightfalse +\newif\ifjosefin@extralight \josefin@extralightfalse +\newif\ifjosefin@thin \josefin@thinfalse +\newif\ifjosefin@default \josefin@defaultfalse + +\newcommand*{\JosefinSans@scale}{1} +\RequirePackage{xkeyval} +\DeclareOptionX{scaled}{\renewcommand*{\JosefinSans@scale}{#1}} +\DeclareOptionX{scale}{\renewcommand*{\JosefinSans@scale}{#1}} +\DeclareOptionX{type1}{\josefin@ttffalse} + +\DeclareOptionX{medium}{\josefin@mediumtrue} +\DeclareOptionX{mb}{\josefin@mediumtrue} +\DeclareOptionX{semibold}{\josefin@semiboldtrue} +\DeclareOptionX{sb}{\josefin@semiboldtrue} +\DeclareOptionX{light}{\josefin@lighttrue} +\DeclareOptionX{l}{\josefin@lighttrue} +\DeclareOptionX{extralight}{\josefin@extralighttrue} +\DeclareOptionX{thin}{\josefin@thintrue} +\DeclareOptionX{default}{\josefin@defaulttrue} +\DeclareOptionX{sfdefault}{\josefin@defaulttrue} + + +\ProcessOptionsX + +\ifjosefin@ttf + \def\josefin@boldstyle{Bold} + \ifjosefin@medium\def\josefin@boldstyle{Medium}\fi + \ifjosefin@semibold\def\josefin@boldstyle{SemiBold}\fi + + \def\josefin@regstyle{Regular} + \ifjosefin@light\def\josefin@regstyle{Light}\fi + \ifjosefin@extralight\def\josefin@regstyle{ExtraLight}\fi + \ifjosefin@thin\def\josefin@regstyle{Thin}\fi + +\else % type1 + + \def\bfseries@sf{b} + \ifjosefin@medium\def\bfseries@sf{medium}\fi + \ifjosefin@semibold\def\bfseries@sf{sb}\fi + + \def\mdseries@sf{m} + \ifjosefin@light\def\mdseries@sf{l}\fi + \ifjosefin@extralight\def\mdseries@sf{el}\fi + \ifjosefin@thin\def\mdseries@sf{thin}\fi +\fi + + +\ifjosefin@ttf + \RequirePackage{fontspec} +\else + \RequirePackage{fontaxes} +\fi + +\ifjosefin@ttf + \def\josefin@regular{Regular} + \ifxetex\XeTeXtracingfonts=1\fi + \defaultfontfeatures{ + Ligatures = TeX , + Scale = \JosefinSans@scale , + Extension = .ttf } + \setsansfont + [ UprightFont = *-\josefin@regstyle , + ItalicFont = *-\ifx\josefin@regstyle\josefin@regular\else\josefin@regstyle\fi Italic, + BoldFont = *-\josefin@boldstyle , + BoldItalicFont = *-\josefin@boldstyle Italic , + ] + {JosefinSans} + % grab current family in case of subsequent change: + \let\josefinfamily\sfdefault + \ifjosefin@default\renewcommand*\familydefault{\josefinfamily}\fi + + \providecommand\sufigures{\addfontfeatures{VerticalPosition=Superior}} + \newfontfamily\josefinthin + [ + UprightFont = *-Thin , + ItalicFont = *-ThinItalic , + BoldFont = *-\josefin@boldstyle , + BoldItalicFont = *-\josefin@boldstyle Italic , + ] + {JosefinSans} + \newfontfamily\josefinlight + [ + UprightFont = *-Light , + ItalicFont = *-LightItalic , + BoldFont = *-\josefin@boldstyle , + BoldItalicFont = *-\josefin@boldstyle Italic , + ] + {JosefinSans} + \newfontfamily\josefinextralight + [ + UprightFont = *-ExtraLight , + ItalicFont = *-ExtraLightItalic , + BoldFont = *-\josefin@boldstyle , + BoldItalicFont = *-\josefin@boldstyle Italic , + ] + {JosefinSans} + \newfontfamily\josefinmedium + [ + UprightFont = *-Medium , + ItalicFont = *-MediumItalic , + BoldFont = *-\josefin@boldstyle , + BoldItalicFont = *-\josefin@boldstyle Italic , + ] + {JosefinSans} + \newfontfamily\josefinsemibold + [ + UprightFont = *-SemiBold , + ItalicFont = *-SemiBoldItalic , + ] + {JosefinSans} +\else % type1 + + + \def\josefin@family{JosefinSans-LF} + \renewcommand*\sfdefault{\josefin@family} + \ifjosefin@default\edef\familydefault{\sfdefault}\edef\seriesdefault{\mdseries@sf}\fi + + \def\josefinthin{\fontfamily{\josefin@family}\fontseries{thin}\selectfont} + \def\josefinlight{\fontfamily{\josefin@family}\fontseries{l}\selectfont} + \def\josefinextralight{\fontfamily{\josefin@family}\fontseries{el}\selectfont} + \def\josefinmedium{\fontfamily{\josefin@family}\fontseries{medium}\selectfont} + \def\josefinsemibold{\fontfamily{\josefin@family}\fontseries{sb}\selectfont} + +\fi + +\ifjosefin@ttf + \defaultfontfeatures{} +\fi + +\endinput |