summaryrefslogtreecommitdiff
path: root/support/latex-make/pdfswitch.dtx
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /support/latex-make/pdfswitch.dtx
Initial commit
Diffstat (limited to 'support/latex-make/pdfswitch.dtx')
-rw-r--r--support/latex-make/pdfswitch.dtx152
1 files changed, 152 insertions, 0 deletions
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}
+%</dtx>
+%<package>\NeedsTeXFormat{LaTeX2e}%
+%<package>\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%
+}
+%</package>