summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/libertine/libertine.sty
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/latex/libertine/libertine.sty')
-rw-r--r--Master/texmf-dist/tex/latex/libertine/libertine.sty270
1 files changed, 235 insertions, 35 deletions
diff --git a/Master/texmf-dist/tex/latex/libertine/libertine.sty b/Master/texmf-dist/tex/latex/libertine/libertine.sty
index 5605be5bcfc..e34cfd48f3b 100644
--- a/Master/texmf-dist/tex/latex/libertine/libertine.sty
+++ b/Master/texmf-dist/tex/latex/libertine/libertine.sty
@@ -1,38 +1,238 @@
-% LaTeX-Package for libertine Type-1
-%
-% Herbert Voss herbert@dante.de
-%
-% (License LPPL)
-%
-\def\libertineVersion{0.03}%
-\def\libertineVersionDate{2012/10/19}
-%
\ProvidesPackage{libertine}[%
- \libertineVersionDate\space-\space\libertineVersion:
- Font Libertine/Biolinum - Herbert Voss]
-%
-\newif\ifhv@italic\hv@italicfalse
-\DeclareOption{SlantedAsItalic}{\hv@italictrue}
-
-\DeclareOption*{
- \PassOptionsToPackage{\CurrentOption}{biolinum-type1}%
- \PassOptionsToPackage{\CurrentOption}{libertine-type1}%
-}
-\ProcessOptions\relax
-%
-\RequirePackage{biolinum-type1}
-\RequirePackage{libertine-type1}
-\RequirePackage[LY1,T1]{fontenc}
-%
-\ifhv@italic
- \let\textsl\textit % there is no more a slanted variant
- \let\slshape\itshape
+ 2012/11/13 (Bob Tennent) Supports Libertine and Biolinum fonts for all LaTeX engines. ]
+
+% with (partial) compatibilty with libertine-type1, biolinum-type1,
+% libertine, libertine-legacy and libertineotf packages
+
+\RequirePackage{ifxetex,ifluatex,xkeyval,textcomp}
+
+\newif\iflibertine@otf
+\ifxetex
+ \libertine@otftrue
+\else\ifluatex
+ \libertine@otftrue
+\else % [pdf]LaTeX
+ \libertine@otffalse
+\fi\fi
+
+\newif\iflibertine@sf \libertine@sffalse
+\newif\iflibertine@rm \libertine@rmfalse
+\newif\iflibertine@sfdefault \libertine@sfdefaultfalse
+\newif\iflibertine@lining \libertine@liningfalse
+\newif\iflibertine@tabular \libertine@tabularfalse
+\newif\iflibertine@semibold \libertine@semiboldfalse
+
+\DeclareOptionX{sf}{\libertine@sftrue}
+\DeclareOptionX{rm}{\libertine@rmtrue}
+\DeclareOptionX{sfdefault}{\libertine@sftrue\libertine@sfdefaulttrue}
+\DeclareOptionX{type1}{\libertine@otffalse}
+\DeclareOptionX{lining}{\libertine@liningtrue}
+\DeclareOptionX{nf}{\libertine@liningtrue}
+\DeclareOptionX{lf}{\libertine@liningtrue}
+\DeclareOptionX{oldstyle}{\libertine@liningfalse}
+\DeclareOptionX{osf}{\libertine@liningfalse}
+\DeclareOptionX{tabular}{\libertine@tabulartrue}
+\DeclareOptionX{proportional}{\libertine@tabularfalse}
+\DeclareOptionX{semibold}{\libertine@semiboldtrue}
+\DeclareOptionX{bold}{\libertine@semiboldfalse}
+
+\newcommand*{\LinuxLibertineO@scale}{1} % not adjustable
+\newcommand*{\LinuxBiolinumO@scale}{1}
+\DeclareOptionX{scaled}{\renewcommand*{\LinuxBiolinumO@scale}{#1}}
+\DeclareOptionX{scale}{\renewcommand*{\LinuxBiolinumO@scale}{#1}}
+
+\ExecuteOptionsX{oldstyle,proportional,bold}
+\ProcessOptionsX\relax
+
+\iflibertine@otf
+ \iflibertine@lining
+ \def\libertine@figurestyle{Lining}
+ \else
+ \def\libertine@figurestyle{OldStyle}
+ \fi
+ \iflibertine@tabular
+ \def\libertine@figurealign{Monospaced}
+ \else
+ \def\libertine@figurealign{Proportional}
+ \fi
+ \iflibertine@semibold
+ \def\LibertineO@boldstyle{RZ}
+ \else
+ \def\LibertineO@boldstyle{RB}
+ \fi
+
+\else % type1
+
+ \iflibertine@lining
+ \def\libertine@figurestyle{LF}
+ \else
+ \def\libertine@figurestyle{OsF}
+ \fi
+ \iflibertine@tabular
+ \def\libertine@figurealign{T}
+ \else
+ \def\libertine@figurealign{}
+ \fi
+ \iflibertine@semibold
+ \renewcommand*{\bfdefault}{sb}
+ \else
+ \renewcommand*{\bfdefault}{b}
+ \fi
\fi
-%
-\endinput
-%% This package allows a compatibility to the old package
-%% libertine which loads Biolinum _and_ Libertine.
-%% All options are passes to the new packages
-%% biolinum-type1 and libertine-type1. The default
-%% font encoding is set to T1.
+
+\iflibertine@otf
+ \RequirePackage{fontspec}
+\else
+ \RequirePackage{fontenc,fontaxes}
+\fi
+
+\iflibertine@rm\else\iflibertine@sf\else
+ \libertine@rmtrue\libertine@sftrue % both false -> both true
+\fi\fi
+
+% Set main and/or sans fonts:
+
+\iflibertine@otf
+
+ \ifxetex\XeTeXtracingfonts=1\fi
+ \defaultfontfeatures{
+ Ligatures = TeX ,
+ Extension = .otf ,
+ SmallCapsFeatures={Letters=SmallCaps}
+ }
+ \iflibertine@rm
+ \setmainfont
+ [ Numbers = {\libertine@figurealign,\libertine@figurestyle},
+ UprightFont = *_R,
+ ItalicFont = *_RI,
+ BoldFont = *_\LibertineO@boldstyle,
+ BoldItalicFont = *_\LibertineO@boldstyle I
+ ] {LinLibertine530}
+ \newfontfamily\libertine
+ [ Numbers = {\libertine@figurealign,\libertine@figurestyle},
+ UprightFont = *_R,
+ ItalicFont = *_RI,
+ BoldFont = *_\LibertineO@boldstyle,
+ BoldItalicFont = *_\LibertineO@boldstyle I
+ ] {LinLibertine530}
+ \fi
+ \iflibertine@sf
+ \setsansfont
+ [ Numbers = {\libertine@figurealign, \libertine@figurestyle} ,
+ Scale = \LinuxBiolinumO@scale ,
+ UprightFont = *_R ,
+ ItalicFont = *_RI ,
+ BoldFont = *_RB ,
+ BoldItalicFont = *_RBO % oblique to fake italic
+ ] {LinBiolinum530}
+ \newfontfamily\biolinum
+ [ Numbers = {\libertine@figurealign, \libertine@figurestyle} ,
+ Scale = \LinuxBiolinumO@scale ,
+ UprightFont = *_R ,
+ ItalicFont = *_RI ,
+ BoldFont = *_RB ,
+ BoldItalicFont = *_RBO % oblique to fake italic
+ ] {LinBiolinum530}
+ % grab the \sfdefault in case it changes subsequently:
+ \let\biolinumfamily\sfdefault
+ \iflibertine@sfdefault\renewcommand*\familydefault{\biolinumfamily}\fi
+ \fi
+
+\else % type1
+
+ \def\libertinefamily{LinuxLibertineO-\libertine@figurealign\libertine@figurestyle}
+ \def\biolinumfamily{LinuxBiolinumO-\libertine@figurealign\libertine@figurestyle}
+
+ \iflibertine@rm\renewcommand*\rmdefault{\libertinefamily}\fi
+ \iflibertine@sf\renewcommand*\sfdefault{\biolinumfamily}\fi
+ \iflibertine@sfdefault\renewcommand*\familydefault{\biolinumfamily}\fi
+
+\fi
+
+% Define \oldstylenums[f] and \liningnums[f]
+
+\iflibertine@otf
+ \newfontfamily\libertineosf
+ [ Numbers = {\libertine@figurealign,OldStyle},
+ UprightFont = *_R,
+ ItalicFont = *_RI,
+ BoldFont = *_\LibertineO@boldstyle,
+ BoldItalicFont = *_\LibertineO@boldstyle I
+ ] {LinLibertine530}
+ \newfontfamily\libertinelf
+ [ Numbers = {\libertine@figurealign,Lining},
+ UprightFont = *_R,
+ ItalicFont = *_RI,
+ BoldFont = *_\LibertineO@boldstyle,
+ BoldItalicFont = *_\LibertineO@boldstyle I
+ ] {LinLibertine530}
+ \newfontfamily\biolinumosf
+ [ Numbers = {\libertine@figurealign,OldStyle},
+ Scale = \LinuxBiolinumO@scale ,
+ UprightFont = *_R,
+ ItalicFont = *_RI,
+ BoldFont = *_RB,
+ BoldItalicFont = *_RBO % oblique to fake italic
+ ] {LinBiolinum530}
+ \newfontfamily\biolinumlf
+ [ Numbers = {\libertine@figurealign,Lining},
+ Scale = \LinuxBiolinumO@scale ,
+ UprightFont = *_R,
+ ItalicFont = *_RI,
+ BoldFont = *_RB,
+ BoldItalicFont = *_RBO % oblique to fake italic
+ ] {LinBiolinum530}
+ \iflibertine@rm
+ \renewcommand*\oldstylenums[1]{\libertineosf #1}
+ \renewcommand*\liningnums[1]{\libertinelf #1}
+ \fi
+ \iflibertine@sf
+ \newcommand*\oldstylenumsf[1]{\biolinumosf #1}
+ \newcommand*\liningnumsf[1]{\biolinumlf #1}
+ \fi
+ \iflibertine@rm
+ \iflibertine@sf\else % Libertine only
+ \newcommand*\oldstylenumsf [1]{\textsf{\oldstylenums{#1}}}
+ \newcommand*\liningnumsf [1]{\textsf{\liningnums{#1}}}
+ \fi
+ \else
+ \iflibertine@sf % Biolinum only
+ % \oldstynums and \liningnums defined by \fontspec ?
+ \fi
+ \fi
+\else % type1
+ \iflibertine@rm
+ \iflibertine@sf % Both Libertine and Biolinum
+ \renewcommand*\oldstylenums [1]
+ {{\fontfamily{LinuxLibertineO-\libertine@figurealign OsF}\selectfont#1}}
+ \newcommand*\liningnums [1]
+ {{\fontfamily{LinuxLibertineO-\libertine@figurealign LF}\selectfont#1}}
+ \newcommand*\oldstylenumsf [1]
+ {{\fontfamily{LinuxBiolinumO-\libertine@figurealign OsF}\selectfont#1}}
+ \newcommand*\liningnumsf [1]
+ {{\fontfamily{LinuxBiolinumO-\libertine@figurealign LF}\selectfont#1}}
+ \else % Libertine only
+ \renewcommand*\oldstylenums [1]
+ {{\fontfamily{LinuxLibertineO-\libertine@figurealign OsF}\selectfont#1}}
+ \newcommand*\liningnums [1]
+ {{\fontfamily{LinuxLibertineO-\libertine@figurealign LF}\selectfont#1}}
+ \newcommand*\oldstylenumsf [1]{\textsf{\oldstylenums{#1}}}
+ \newcommand*\liningnumsf [1]{\textsf{#1}}
+ \fi
+ \else % Biolinum only
+ % \oldstylenums defined by \textcomp?
+ \newcommand*\liningnums [1]{#1}
+ \newcommand*\oldstylenumsf [1]
+ {{\fontfamily{LinuxBiolinumO-\libertine@figurealign OsF}\selectfont#1}}
+ \newcommand*\liningnumsf [1]
+ {{\fontfamily{LinuxBiolinumO-\libertine@figurealign LF}\selectfont#1}}
+ \fi
+\fi
+
+% turn off defaults in case other fonts are selected:
+\iflibertine@otf
+ \defaultfontfeatures{}
+\fi
+
+\endinput