blob: 41fc81ba6f1ec5d4251562d974293eb7a4607c7b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
|
%--------------------------------------------
%
% Package pgfplots, library for image externalization
%
% Copyright 2007/2008/2009 by Christian Feuersänger.
%
% 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 3 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, see <http://www.gnu.org/licenses/>.
%
%--------------------------------------------
% This file is a wrapper which loads the external library.
%
% If we have a recent pgf version, use its external lib. If not: load
% the copy shipped with pgfplots.
%
% NOTE:
% the external library has been written by Christian Feuersänger as
% part of his work on pgfplots -- since it is general purpose, it is
% part of tikz. A copy comes with pgfplots.
%
%
% \pgfplots@glob@TMPa = 1 iff we can rely on the external lib shipped
% with tikz:
\pgfplotsiffileexists{tikzlibraryexternal.code.tex}{%
\pgfplots@ifneedspgfcompabitibilitycode@has@pgf@one@zero@zero{%
\def\pgfplots@glob@TMPa{0}%
}{%
\def\pgfplots@glob@TMPa{1}%
}%
}{%
\def\pgfplots@glob@TMPa{0}%
}%
\def\pgfplots@backw@compat@external@load{%
\immediate\write16{Package pgfplots external lib: loading complementary code for your PGF version...}
% Backwards compatibility:
\let\pgfplots@backw@compat@AtBeginDocument=\AtBeginDocument
\def\AtBeginDocument##1{}%
\input pgfplotsoldpgfsupp_pgfcoreexternal.code.tex
\input pgfplotsoldpgfsupp_tikzlibraryexternal.code.tex
\let\AtBeginDocument=\pgfplots@backw@compat@AtBeginDocument
}%
\if1\pgfplots@glob@TMPa
\usetikzlibrary{external}%
\pgfutil@ifundefined{tikzexternal@driver@pgfsys-pdftex.def}{%
\pgfplots@backw@compat@external@load
}{}%
\else
\pgfplots@backw@compat@external@load
\fi
% This here is a section for patches.
%
% A patch contains software pieces which add individual functionality.
%
% The content is copyright Christian Feuersaenger. I added it to both
% PGF and TikZ such that it can be distributed easily
\expandafter\ifx\csname pgfsys@prepare@papersize\endcsname\relax
\immediate\write16{Package pgfplots external lib: patching system driver code for your PGF version...}
% Patch drivers.... this is needed since recent revisions.
\def\pgfsys@prepare@papersize#1#2{\pgfsys@papersize{#1}{#2}}
\begingroup
\expandafter\def\csname pgfplots@backw@ext@pgfsys-dvips.def\endcsname{%
\gdef\pgfsys@prepare@papersize##1##2{%
\expandafter\gdef\expandafter\pgfsys@atbegindocument\expandafter{\pgfsys@atbegindocument\special{papersize=##1,##2}}%
}
}%
\expandafter\def\csname pgfplots@backw@ext@pgfsys-dvipdfmx.def\endcsname{%
\gdef\pgfsys@prepare@papersize##1##2{%
\expandafter\gdef\expandafter\pgfsys@atbegindocument%
\expandafter{\pgfsys@atbegindocument
\special{papersize=##1,##2}%
}
}
}%
\expandafter\def\csname pgfplots@backw@ext@pgfsys-dvipdfm.def\endcsname{%
\gdef\pgfsys@prepare@papersize##1##2{%
\expandafter\gdef\expandafter\pgfsys@atbegindocument%
\expandafter{\pgfsys@atbegindocument
\special{papersize=##1,##2}%
}
}
}%
\csname pgfplots@backw@ext@\pgfsysdriver\endcsname
\endgroup
\fi
\endinput
|