From e0c6872cf40896c7be36b11dcc744620f10adf1d Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Mon, 2 Sep 2019 13:46:59 +0900 Subject: Initial commit --- support/latex-make/pdfswitch.dtx | 152 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 152 insertions(+) create mode 100644 support/latex-make/pdfswitch.dtx (limited to 'support/latex-make/pdfswitch.dtx') diff --git a/support/latex-make/pdfswitch.dtx b/support/latex-make/pdfswitch.dtx new file mode 100644 index 0000000000..a5603a74b5 --- /dev/null +++ b/support/latex-make/pdfswitch.dtx @@ -0,0 +1,152 @@ +% \iffalse meta-comment +%% +%% File: pdfswitch.dtx Copyright (C) 2002--2016 V. Danjean, A. Legrand +%% Vincent.Danjean@ens-lyon.org +%% Arnaud.Legrand@ens-lyon.org +%% +%% This program is free software; you can redistribute it and/or +%% modify it under the terms of the GNU General Public License +%% as published by the Free Software Foundation; either version 2 +%% of the License, or (at your option) any later version. +%% +%% This program is distributed in the hope that it will be useful, +%% but WITHOUT ANY WARRANTY; without even the implied warranty of +%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%% GNU General Public License for more details. +%% +%% You should have received a copy of the GNU General Public License +%% along with this program; if not, write to the Free Software +%% Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +%% +% +%<*dtx> + \ProvidesFile{pdfswitch.dtx} +% +%\NeedsTeXFormat{LaTeX2e}% +%\ProvidesPackage{pdfswitch}% +% \fi +% \ProvidesFile{pdfswitch.dtx} +[2018/10/17 v2.3.0 No changes in pdfswitch.dtx] +%<*package> +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% SWITCH FOR PDFLATEX or LATEX +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%% +\RequirePackage{ae,aeguill} +\RequirePackage{ifthen} +\RequirePackage{ifpdf} +\RequirePackage{etoolbox} + +\newboolean{nocolor@pdfswitch} +\setboolean{nocolor@pdfswitch}{false} +\DeclareOption{nocolor}{\setboolean{nocolor@pdfswitch}{true}} +\newboolean{backref@pdfswitch} +\setboolean{backref@pdfswitch}{false} +\DeclareOption{backref}{\setboolean{backref@pdfswitch}{true}} +\newboolean{pagebackref@pdfswitch} +\setboolean{pagebackref@pdfswitch}{false} +\DeclareOption{pagebackref}{\setboolean{pagebackref@pdfswitch}{true}} +\newboolean{noborder@pdfswitch} +\setboolean{noborder@pdfswitch}{false} +\DeclareOption{noborder}{\setboolean{noborder@pdfswitch}{true}} +\newboolean{plainpages@pdfswitch} +\setboolean{plainpages@pdfswitch}{false} +\DeclareOption{plainpages}{\setboolean{plainpages@pdfswitch}{true}} + +\ProcessOptions + +%%%%%%%%%%%%%%%%%%%%%%%%% graphicx and thumbpdf %%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% differ the hyperref and (x)color package loading +\AtEndPreamble{% + \RequirePackage{hyperref}% + \@ifundefined{colorbox}{% + \IfFileExists{xcolor.sty}{\RequirePackage{xcolor}}% + {\RequirePackage{color}}% + }{}% + \definecolor{pdfurlcolor}{rgb}{0,0,0.6}% + \definecolor{pdfcitecolor}{rgb}{0,0.6,0}% + \definecolor{pdflinkcolor}{rgb}{0.6,0,0}% + % + \RequirePackage{graphicx}% +}% +\ifpdf +\PassOptionsToPackage{pdftex}{graphicx} %%% graphics for pdfLaTeX +\PassOptionsToPackage{pdftex}{color} +\PassOptionsToPackage{pdftex}{thumbpdf} %%% thumbnails for pdflatex +\AtEndPreamble{% + \DeclareGraphicsExtensions{.pdf} %%% standard extension for included graphics + \RequirePackage{thumbpdf}% +}% +\else +\PassOptionsToPackage{dvips}{graphicx} %%% graphics for dvips +\AtEndPreamble{% + \DeclareGraphicsExtensions{.eps} %%% standard extension for included graphics +}% +%\usepackage[ps2pdf]{thumbpdf} %%% thumbnails for ps2pdf +\fi + +%%%%%%%%%%%%%%%%%%%%%%%%% Basic options for hyperref %%%%%%%%%%%%%%%%%%%%%%%%% +\ifpdf +\edef\keys@pdfswitch{% + pdftex, %%% hyper-references for pdflatex + bookmarks=true,% %%% generate bookmarks ... + bookmarksnumbered=true,% %%% ... with numbers + hypertexnames=false,% %%% needed for correct links to figures !!! + breaklinks=true% %%% break links if exceeding a single line +} +\else +\edef\keys@pdfswitch{% + ps2pdf, %%% hyper-references for ps2pdf + bookmarks=true,% %%% generate bookmarks ... + bookmarksnumbered=true,% %%% ... with numbers + hypertexnames=false,% %%% needed for correct links to figures !!! + breaklinks=true,% %%% breaks lines, but links are very small + pdfborder={0 0 11.0} %%% border-width of frames will + %%% be multiplied with 0.009 by ps2pdf +} +\fi + +\ifthenelse{\boolean{nocolor@pdfswitch}}{% + \edef\keys@pdfswitch{\keys@pdfswitch,colorlinks=false}% +}{ + \edef\keys@pdfswitch{\keys@pdfswitch,colorlinks=true,% + citecolor=pdfcitecolor, + urlcolor=pdfurlcolor, + linkcolor=pdflinkcolor, + linkbordercolor={1 1 1}}% +} + +\ifthenelse{\boolean{plainpages@pdfswitch}}{% +}{ + \edef\keys@pdfswitch{\keys@pdfswitch,plainpages=false}% +} + +\ifthenelse{\boolean{noborder@pdfswitch}}{% + \edef\keys@pdfswitch{\keys@pdfswitch,pdfborder={0 0 0}}% +}{} + +\ifthenelse{\boolean{backref@pdfswitch}}{% + \edef\keys@pdfswitch{\keys@pdfswitch,backref}% +}{} + +\ifthenelse{\boolean{pagebackref@pdfswitch}}{% + \edef\keys@pdfswitch{\keys@pdfswitch,pagebackref}% +}{} + +\PassOptionsToPackage{\keys@pdfswitch}{hyperref}% + +%%%%%%%%%%%%%%%%%%%%%%%%% HyperSetup %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\AtBeginDocument{ + \ifpdf + \hypersetup{ + pdfauthor = {\@author}, + pdftitle = {\@title}, + pdfsubject = {\@ifundefined{@subject}{}{\@subject}}, + pdfkeywords = {\@ifundefined{@keywords}{}{\@keywords}}, + } + %%% pdfcreator, pdfproducer, and Creation Date are automatically set by pdflatex !!! + \pdfadjustspacing=1 %%% force LaTeX-like character spacing + \else% + \fi% +} +% -- cgit v1.2.3