summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/media9
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2017-09-29 20:38:39 +0000
committerKarl Berry <karl@freefriends.org>2017-09-29 20:38:39 +0000
commitc481150d3ae193500b45a1ff37f38fc2a7ab998f (patch)
tree11a4bf5692fd83a3fb88dfcaefc85572d9b60ab3 /Master/texmf-dist/tex/latex/media9
parent67658befcd7708cf0ec966f76c669b6f833da2cd (diff)
media9 (29sep17)
git-svn-id: svn://tug.org/texlive/trunk@45432 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/media9')
-rw-r--r--Master/texmf-dist/tex/latex/media9/javascript/3Dmenu.js2
-rw-r--r--Master/texmf-dist/tex/latex/media9/javascript/3Dspintool.js2
-rw-r--r--Master/texmf-dist/tex/latex/media9/javascript/animation.js2
-rw-r--r--Master/texmf-dist/tex/latex/media9/javascript/asylabels.js2
-rw-r--r--Master/texmf-dist/tex/latex/media9/media9.sty10
-rw-r--r--Master/texmf-dist/tex/latex/media9/pdfbase.sty78
6 files changed, 78 insertions, 18 deletions
diff --git a/Master/texmf-dist/tex/latex/media9/javascript/3Dmenu.js b/Master/texmf-dist/tex/latex/media9/javascript/3Dmenu.js
index 5cd1893cba9..9037d040dd3 100644
--- a/Master/texmf-dist/tex/latex/media9/javascript/3Dmenu.js
+++ b/Master/texmf-dist/tex/latex/media9/javascript/3Dmenu.js
@@ -44,7 +44,7 @@
// conditions of the LaTeX Project Public License.
//
// The latest version of this license is in
-// http://mirrors.ctan.org/tex-archive/macros/latex/base/lppl.txt
+// http://mirrors.ctan.org/macros/latex/base/lppl.txt
//
// This work has the LPPL maintenance status `maintained'.
//
diff --git a/Master/texmf-dist/tex/latex/media9/javascript/3Dspintool.js b/Master/texmf-dist/tex/latex/media9/javascript/3Dspintool.js
index 46001890e19..529288ad0ce 100644
--- a/Master/texmf-dist/tex/latex/media9/javascript/3Dspintool.js
+++ b/Master/texmf-dist/tex/latex/media9/javascript/3Dspintool.js
@@ -18,7 +18,7 @@
// conditions of the LaTeX Project Public License.
//
// The latest version of this license is in
-// http://mirrors.ctan.org/tex-archive/macros/latex/base/lppl.txt
+// http://mirrors.ctan.org/macros/latex/base/lppl.txt
//
// This work has the LPPL maintenance status `maintained'.
//
diff --git a/Master/texmf-dist/tex/latex/media9/javascript/animation.js b/Master/texmf-dist/tex/latex/media9/javascript/animation.js
index a5b423bf1bf..4f202c4e7d3 100644
--- a/Master/texmf-dist/tex/latex/media9/javascript/animation.js
+++ b/Master/texmf-dist/tex/latex/media9/javascript/animation.js
@@ -23,7 +23,7 @@ var palindrome = true; // true --> play forth and back
// conditions of the LaTeX Project Public License.
//
// The latest version of this license is in
-// http://mirrors.ctan.org/tex-archive/macros/latex/base/lppl.txt
+// http://mirrors.ctan.org/macros/latex/base/lppl.txt
//
// This work has the LPPL maintenance status `maintained'.
//
diff --git a/Master/texmf-dist/tex/latex/media9/javascript/asylabels.js b/Master/texmf-dist/tex/latex/media9/javascript/asylabels.js
index 0c231938952..95f1c3c3d1c 100644
--- a/Master/texmf-dist/tex/latex/media9/javascript/asylabels.js
+++ b/Master/texmf-dist/tex/latex/media9/javascript/asylabels.js
@@ -19,7 +19,7 @@
// conditions of the LaTeX Project Public License.
//
// The latest version of this license is in
-// http://mirrors.ctan.org/tex-archive/macros/latex/base/lppl.txt
+// http://mirrors.ctan.org/macros/latex/base/lppl.txt
//
// This work has the LPPL maintenance status `maintained'.
//
diff --git a/Master/texmf-dist/tex/latex/media9/media9.sty b/Master/texmf-dist/tex/latex/media9/media9.sty
index b4794540b8b..2f1c9e3f621 100644
--- a/Master/texmf-dist/tex/latex/media9/media9.sty
+++ b/Master/texmf-dist/tex/latex/media9/media9.sty
@@ -26,7 +26,7 @@
% conditions of the LaTeX Project Public License.
%
% The latest version of this license is in
-% http://mirrors.ctan.org/tex-archive/macros/latex/base/lppl.txt
+% http://mirrors.ctan.org/macros/latex/base/lppl.txt
%
% This work has the LPPL maintenance status `maintained'.
%
@@ -37,8 +37,8 @@
\RequirePackage{xparse}
\RequirePackage{atbegshi}
-\def\g@mix@date@tl{2017/08/25}
-\def\g@mix@version@tl{0.85}
+\def\g@mix@date@tl{2017/09/29}
+\def\g@mix@version@tl{0.86}
\def\g@mix@liiikerneldate{2017/05/29}
\def\g@mix@liiipkgdate{2017/05/29}
@@ -812,7 +812,7 @@
\mix@btn@dim=\dimexpr\baselineskip*3\relax%
\ifdim#1<\mix@btn@dim\mix@btn@dim=#1\fi%
\ifdim#2<\mix@btn@dim\mix@btn@dim=#2\fi%
- \tikz[x=\mix@btn@dim,y=\mix@btn@dim,transparency group]{%
+ \tikz[x=\mix@btn@dim,y=\mix@btn@dim]{%
\shade [opacity=\ifdim#2>\dimexpr\baselineskip*6\relax0.6\else0\fi,
shading angle=-180,even odd rule]
(-\dimexpr#1/2\relax,-0.5) rectangle (\dimexpr#1/2\relax,0.5)
@@ -841,7 +841,7 @@
\mix@btn@dim=\dimexpr\baselineskip*3\relax%
\ifdim#1<\mix@btn@dim\mix@btn@dim=#1\fi%
\ifdim#2<\mix@btn@dim\mix@btn@dim=#2\fi%
- \tikz[x=\mix@btn@dim,y=\mix@btn@dim,transparency group]{%
+ \tikz[x=\mix@btn@dim,y=\mix@btn@dim]{%
\fill [opacity=\ifdim#2>\dimexpr\baselineskip*6\relax0.5\else0\fi,
color=gray,even odd rule]
(-\dimexpr#1/2\relax,-0.5) rectangle (\dimexpr#1/2\relax,0.5);
diff --git a/Master/texmf-dist/tex/latex/media9/pdfbase.sty b/Master/texmf-dist/tex/latex/media9/pdfbase.sty
index e3292be7f35..9643557cd05 100644
--- a/Master/texmf-dist/tex/latex/media9/pdfbase.sty
+++ b/Master/texmf-dist/tex/latex/media9/pdfbase.sty
@@ -97,6 +97,15 @@
%
% --------
%
+% \pbs_literal:nn
+% #1: keyword (empty) | direct | page
+% #2: raw PDF/Postscript code
+% implements \pdfliteral{...}, \pdfliteral page {...},
+% \pdfliteral page {...} from pdfTeX, and
+% \special{" ...} and \special{ps: ...} from dvips
+%
+% --------
+%
% \pbs_pdfcatalog:n
% #1: dictionary (key-value)
%
@@ -119,7 +128,7 @@
% conditions of the LaTeX Project Public License.
%
% The latest version of this license is in
-% http://mirrors.ctan.org/tex-archive/macros/latex/base/lppl.txt
+% http://mirrors.ctan.org/macros/latex/base/lppl.txt
%
% This work has the LPPL maintenance status `maintained'.
%
@@ -128,8 +137,8 @@
\RequirePackage{expl3}
\RequirePackage{l3keys2e}
-\def\g@pbs@date@tl{2017/08/25}
-\def\g@pbs@version@tl{0.17}
+\def\g@pbs@date@tl{2017/09/29}
+\def\g@pbs@version@tl{0.18}
\ProvidesExplPackage{pdfbase}{\g@pbs@date@tl}{\g@pbs@version@tl}
{driver independent access to low-level PDF features}
@@ -277,6 +286,21 @@
\cs_generate_variant:Nn\_pbs_reftonum:n{f}
\cs_new_nopar:Npn\_pbs_reftonum:w #1~0~R{#1}
+ %literal PDF code into content stream, no saving of graphics state
+ \cs_new_nopar:Nn\pbs_literal:nn{ % #1: empty (`'), `direct' or `page'
+ \str_case:nnF{#1}{ % #2: raw PDF
+ % `direct' inserts raw pdf code without translating origin (0,0) to
+ % current position: origin is lower left page corner
+ {direct}{\pdfliteral~direct~{#2}}
+ % same as above, but closing text object if necessary
+ {page}{\pdfliteral~page~{#2}}
+ }{
+ % closing text object if necessary and setting current
+ % location's coordinates to (0,0)
+ \pdfliteral{#2}
+ }
+ }
+
\cs_new_nopar:Nn\pbs_pdfobj:nnn{
\tl_clear:N\l_pbs_usenum_tl
\tl_if_blank:oF{#1}{
@@ -431,6 +455,20 @@
%suppress any annotation growth through (x)dvipdfmx option/config var `g'
\AtBeginDocument{\special{dvipdfmx:config~g~0}}
+ %literal PDF code into content stream; open text objects are always closed
+ \cs_new_nopar:Nn\pbs_literal:nn{ % #1: empty (`'), `direct' or `page'
+ \str_if_eq:nnTF{#1}{}{ % #2: raw PDF
+ % set current location's coordinates to (0,0), while saving graphics
+ % state before and re-instating after insertion (this is different from
+ % \pdfliteral{...}}
+ \special{pdf:content~#2}
+ }{
+ % `direct' works the same as `page': no origin translation,
+ % no gs saving, but closing open text objects
+ \special{pdf:code~#2}
+ }
+ }
+
\cs_new_nopar:Nn\pbs_pdfobj:nnn{
\tl_if_blank:oTF{#1}{
\tl_set:Nx\l_pbs_usenum_tl{@pbs@obj\int_use:N\g_pbs_obj_int}
@@ -573,7 +611,7 @@
/Properties~<</rm@oc\int_use:N\g_pbs_oc_int\space#2>>>>}
\int_gincr:N\g_pbs_oc_int
}
- \cs_new_nopar:Nn\pbs_pdfemc:{\special{pdf:~code~EMC}}
+ \cs_new_nopar:Nn\pbs_pdfemc:{\special{pdf:code~EMC}}
}{
%dvips
\bool_new:N\g_pbs_powerdot_bool %to cope with some powerdot oddity
@@ -620,6 +658,20 @@
}
}
+ %insert literal Postscript code
+ \cs_new_nopar:Nn\pbs_literal:nn{ % #1: empty (`'), `direct' or `page'
+ \str_if_eq:nnTF{#1}{}{ % #2: raw Postscript
+ % set current location's coordinates to (0,0) and set unit vectors to
+ % 1bp right and 1bp upwards; graphics state is saved before and
+ % re-instated after insertion
+ \special{"~#2}
+ }{
+ % `direct' does the same as `page': no origin translation,
+ % no gs saving
+ \special{ps::~#2}
+ }
+ }
+
\cs_new_nopar:Nn\pbs_pdfobj:nnn{
\tl_clear:N\l_pbs_usenum_tl
\tl_if_blank:oTF{#1}{
@@ -798,6 +850,8 @@
}
\end{picture}
\group_end:
+ %additional dict entries
+ \tl_set:Nx\l_tmpa_tl{#4} \tl_trim_spaces:N\l_tmpa_tl
\special{ps:~
gsave~
currentpoint~/pbs@cury~exch~def~/pbs@curx~exch~def~
@@ -816,6 +870,10 @@
pbs@llx~pbs@curx~sub~pbs@lly~pbs@cury~sub~
pbs@urx~pbs@curx~sub~pbs@ury~pbs@cury~sub
]
+ %insert additional dict entries (the Distiller way)
+ \str_if_eq_x:nnF{\l_tmpa_tl}{}{
+ product~(Distiller)~search~{pop~pop~pop~\l_tmpa_tl}{pop}ifelse
+ }
/BP~pdfmark~grestore~
\int_compare:nT{#2>\c_zero}{
%operations needed if used as annotation appearance
@@ -843,12 +901,14 @@
}
\begin{picture}(0,0)\put(0,0){\box_use:N#5}\end{picture}
\special{ps:~mark~/EP~pdfmark~grestore}
- %additional dict entries
- \tl_set:Nx\l_tmpa_tl{#4}
- \tl_trim_spaces:N\l_tmpa_tl
+ %insert additional dict entries (the Ghostscript way)
\str_if_eq_x:nnF{\l_tmpa_tl}{}{
- \special{ps:~mark~{pbs@obj\int_use:N\g_pbs_obj_int}~<<\l_tmpa_tl>>~
- /PUT~pdfmark}
+ \special{ps:~
+ product~(Ghostscript)~search~{
+ pop~pop~pop~
+ mark~{pbs@obj\int_use:N\g_pbs_obj_int}~<<\l_tmpa_tl>>~/PUT~pdfmark
+ }{pop}ifelse
+ }
}
\tl_gset:Nx\g_pbs_pdflastxform_tl{{pbs@obj\int_use:N\g_pbs_obj_int}}
\int_gincr:N\g_pbs_obj_int