blob: 84be0bf076149c436b26d4fdf93de0ef08cb89c3 (
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
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
|
%%
%% This is file `memoize-extract-one.tex',
%% generated with the docstrip utility.
%%
%% The original source files were:
%%
%% memoize.dtx (with options: `extract-one')
%%
%% This file is a part of Memoize, a TeX package for externalization of
%% graphics and memoization of compilation results in general, available at
%% https://ctan.org/pkg/memoize and https://github.com/sasozivanovic/memoize.
%%
%% Copyright (c) 2020- Saso Zivanovic <saso.zivanovic@guest.arnes.si>
%% (Sa\v{s}o \v{Z}ivanovi\'{c})
%%
%% This work may be distributed and/or modified under the conditions of the
%% LaTeX Project Public License, either version 1.3c of this license or (at
%% your option) any later version. The latest version of this license is in
%% https://www.latex-project.org/lppl.txt and version 1.3c or later is part of
%% all distributions of LaTeX version 2008 or later.
%%
%% This work has the LPPL maintenance status `maintained'.
%% The Current Maintainer of this work is Saso Zivanovic.
%%
%% The files belonging to this work and covered by LPPL are listed in
%% (<texmf>/doc/generic/memoize/)FILES.
\catcode`\@11\relax
\def\@firstoftwo#1#2{#1}
\def\@secondoftwo#1#2{#2}
\ifdefined\XeTeXversion
\else
\ifdefined\luatexversion
\def\pdfmajorversion{\pdfvariable majorversion}%
\def\pdfminorversion{\pdfvariable minorversion}%
\fi
\ifdefined\mmzpdfmajorversion
\pdfmajorversion\mmzpdfmajorversion\relax
\fi
\ifdefined\mmzpdfminorversion
\pdfminorversion\mmzpdfminorversion\relax
\fi
\fi
\newwrite\extractionlog
\ifdefined\logfile
\immediate\openout\extractionlog{\logfile}%
\def\doublewarning#1{%
\message{#1}%
\def\warningtext{#1}%
\immediate\write\extractionlog{%
\ifdefined\warningtemplate\warningtemplate\else\warningtext\fi
}%
}%
\else
\let\doublewarning\message
\fi
\newif\ifforce
\ifdefined\force
\csname force\force\endcsname
\fi
\def\mmz@tolerance{0.01pt}
\def\mmz@if@roughly@equal#1#2#3{%
\dimen0=\dimexpr#2-#3\relax
\ifdim\dimen0<0pt
\dimen0=-\dimen0\relax
\fi
\ifdim\dimen0>#1\relax
\expandafter\@secondoftwo
\else
\expandafter\@firstoftwo
\fi
}%
\ifdefined\XeTeXversion
\setbox0=\hbox{\XeTeXpdffile \fromdocument\space page \pagenumber media}%
\else
\ifdefined\luatexversion
\saveimageresource page \pagenumber mediabox {\fromdocument}%
\setbox0=\hbox{\useimageresource\lastsavedimageresourceindex}%
\else
\pdfximage page \pagenumber mediabox {\fromdocument}%
\setbox0=\hbox{\pdfrefximage\pdflastximage}%
\fi
\fi
\newif\ifbaddimensions
\ifdefined\expectedwidth
\ifdefined\expectedheight
\mmz@if@roughly@equal{\mmz@tolerance}{\wd0}{\expectedwidth}{%
\mmz@if@roughly@equal{\mmz@tolerance}{\ht0}{\expectedheight}%
{}%
{\baddimensionstrue}%
}{\baddimensionstrue}%
\fi
\fi
\ifdefined\luatexversion
\let\pdfpagewidth\pagewidth
\let\pdfpageheight\pageheight
\def\pdfhorigin{\pdfvariable horigin}%
\def\pdfvorigin{\pdfvariable vorigin}%
\fi
\def\do@shipout{%
\pdfpagewidth=\wd0
\pdfpageheight=\ht0
\ifdefined\XeTeXversion
\hoffset -1 true in
\voffset -1 true in
\else
\pdfhorigin=0pt
\pdfvorigin=0pt
\fi
\shipout\box0
}
\ifbaddimensions
\doublewarning{I refuse to extract page \pagenumber\space from
"\fromdocument", because its size (\the\wd0 \space x \the\ht0) is not
what I expected (\expectedwidth\space x \expectedheight)}%
\ifforce\do@shipout\fi
\else
\do@shipout
\fi
\ifdefined\logfile
\immediate\write\extractionlog{\noexpand\endinput}%
\immediate\closeout\extractionlog
\fi
\bye
\endinput
%%
%% End of file `memoize-extract-one.tex'.
|