1
0
mirror of https://github.com/eddelbuettel/binb synced 2024-12-22 04:29:59 +01:00

Merge pull request #7 from eddelbuettel/feature/iqss_font_fallback

Fall back to default font if Libertinus is unavailable
This commit is contained in:
Dirk Eddelbuettel 2018-10-02 19:04:15 -04:00 committed by GitHub
commit 65948308ce
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 99 additions and 9 deletions

View File

@ -1,3 +1,11 @@
2018-10-02 Ista Zahn <istazahn@gmail.com>
* inst/iqssDemo/beamerfontthemeiqss.sty: Fall back to default font
if Libertinus is unavailable
* inst/rmarkdown/templates/iqss/skeleton/beamerfontthemeiqss.sty:
Ditto
2018-09-27 Dirk Eddelbuettel <edd@debian.org>
* DESCRIPTION (Version, Date): Release 0.0.2

View File

@ -191,7 +191,7 @@ These themes use additional (free) fonts you may need to install:
- [Metropolis](https://github.com/matze/mtheme) wants [Fira Sans](https://github.com/mozilla/Fira)
but can proceed with alternate fonts;
- [IQSS Beamer Theme](https://github.com/IQSS/iqss-beamer-theme) really requires
- [IQSS Beamer Theme](https://github.com/IQSS/iqss-beamer-theme) wants
[Libertinus](https://github.com/libertinus-fonts/libertinus), see the
[IQSS Beamer Theme](https://github.com/IQSS/iqss-beamer-theme) page for details.
- [Presento Theme](https://github.com/RatulSaha/presento) wants

View File

@ -1,7 +1,48 @@
\usefonttheme{professionalfonts}
\RequirePackage{fontspec}
\setmainfont{Libertinus Serif}
\setsansfont{Libertinus Sans}
\setmathfont{Libertinus Math}
\setmonofont{Libertinus Mono}
%% checkfont and iffontsavaiable copied from the metropolis theme
%% by Matthias Vo­gelge­sang.
% Checks if a font is installed; if not, |fontsnotfound| is increased.
\newcounter{fontsnotfound}
\newcommand{\checkfont}[1]{%
\suppressfontnotfounderror=1%
\font\x = "#1" at 10pt
\selectfont
\ifx\x\nullfont%
\stepcounter{fontsnotfound}%
\fi%
\suppressfontnotfounderror=0%
}
% Resets the |fontsnotfound| counter and calls |\checkfont| for each font in
% the comma separated list in the first argument.
\newcommand{\iffontsavailable}[3]{%
\setcounter{fontsnotfound}{0}%
\expandafter\forcsvlist\expandafter%
\checkfont\expandafter{#1}%
\ifnum\value{fontsnotfound}=0%
#2%
\else%
#3%
\fi%
}
\iffontsavailable{Libertinus Serif,%
Libertinus Sans,%
LibertinusMath,%
Libertinus Mono}%
{%
\setmainfont{Libertinus Serif}
\setsansfont{Libertinus Sans}
\setmathfont{Libertinus Math}
\setmonofont{Libertinus Mono}
}{%
\PackageWarning{beamerthememeiqss}{%
Could not find Libertinus fonts.
Please install them from
https://github.com/libertinus-fonts/libertinus/releases
following the instructions at
https://github.com/IQSS/iqss-beamer-theme/blob/master/README.md%
}
}

View File

@ -1,7 +1,48 @@
\usefonttheme{professionalfonts}
\RequirePackage{fontspec}
\setmainfont{Libertinus Serif}
\setsansfont{Libertinus Sans}
\setmathfont{Libertinus Math}
\setmonofont{Libertinus Mono}
%% checkfont and iffontsavaiable copied from the metropolis theme
%% by Matthias Vo­gelge­sang.
% Checks if a font is installed; if not, |fontsnotfound| is increased.
\newcounter{fontsnotfound}
\newcommand{\checkfont}[1]{%
\suppressfontnotfounderror=1%
\font\x = "#1" at 10pt
\selectfont
\ifx\x\nullfont%
\stepcounter{fontsnotfound}%
\fi%
\suppressfontnotfounderror=0%
}
% Resets the |fontsnotfound| counter and calls |\checkfont| for each font in
% the comma separated list in the first argument.
\newcommand{\iffontsavailable}[3]{%
\setcounter{fontsnotfound}{0}%
\expandafter\forcsvlist\expandafter%
\checkfont\expandafter{#1}%
\ifnum\value{fontsnotfound}=0%
#2%
\else%
#3%
\fi%
}
\iffontsavailable{Libertinus Serif,%
Libertinus Sans,%
LibertinusMath,%
Libertinus Mono}%
{%
\setmainfont{Libertinus Serif}
\setsansfont{Libertinus Sans}
\setmathfont{Libertinus Math}
\setmonofont{Libertinus Mono}
}{%
\PackageWarning{beamerthememeiqss}{%
Could not find Libertinus fonts.
Please install them from
https://github.com/libertinus-fonts/libertinus/releases
following the instructions at
https://github.com/IQSS/iqss-beamer-theme/blob/master/README.md%
}
}