texlive[45432] Master/texmf-dist: media9 (29sep17)
commits+karl at tug.org
commits+karl at tug.org
Fri Sep 29 22:38:40 CEST 2017
Revision: 45432
http://tug.org/svn/texlive?view=revision&revision=45432
Author: karl
Date: 2017-09-29 22:38:39 +0200 (Fri, 29 Sep 2017)
Log Message:
-----------
media9 (29sep17)
Modified Paths:
--------------
trunk/Master/texmf-dist/doc/latex/media9/ChangeLog
trunk/Master/texmf-dist/doc/latex/media9/README.md
trunk/Master/texmf-dist/doc/latex/media9/media9.pdf
trunk/Master/texmf-dist/source/latex/media9/media9.tex
trunk/Master/texmf-dist/tex/latex/media9/javascript/3Dmenu.js
trunk/Master/texmf-dist/tex/latex/media9/javascript/3Dspintool.js
trunk/Master/texmf-dist/tex/latex/media9/javascript/animation.js
trunk/Master/texmf-dist/tex/latex/media9/javascript/asylabels.js
trunk/Master/texmf-dist/tex/latex/media9/media9.sty
trunk/Master/texmf-dist/tex/latex/media9/pdfbase.sty
Modified: trunk/Master/texmf-dist/doc/latex/media9/ChangeLog
===================================================================
--- trunk/Master/texmf-dist/doc/latex/media9/ChangeLog 2017-09-29 20:38:25 UTC (rev 45431)
+++ trunk/Master/texmf-dist/doc/latex/media9/ChangeLog 2017-09-29 20:38:39 UTC (rev 45432)
@@ -1,3 +1,9 @@
+2017-09-29
+ * v0.86 : media9.sty
+ * v0.18 : pdfbase.sty
+ * fix : pdfbase.sty: improving \pbs_pdfxform:nnnnn for dvips
+ * new: pdfbase.sty: \pbs_literal:nn (raw PDF/Postscript insertion)
+
2017-08-25
* v0.85 : media9.sty
* v0.17 : pdfbase.sty
Modified: trunk/Master/texmf-dist/doc/latex/media9/README.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/media9/README.md 2017-09-29 20:38:25 UTC (rev 45431)
+++ trunk/Master/texmf-dist/doc/latex/media9/README.md 2017-09-29 20:38:39 UTC (rev 45432)
@@ -44,4 +44,4 @@
## License
-This material is subject to the [LaTeX Project Public License](http://mirrors.ctan.org/tex-archive/macros/latex/base/lppl.txt).
+This material is subject to the [LaTeX Project Public License](http://mirrors.ctan.org/macros/latex/base/lppl.txt).
Modified: trunk/Master/texmf-dist/doc/latex/media9/media9.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/source/latex/media9/media9.tex
===================================================================
--- trunk/Master/texmf-dist/source/latex/media9/media9.tex 2017-09-29 20:38:25 UTC (rev 45431)
+++ trunk/Master/texmf-dist/source/latex/media9/media9.tex 2017-09-29 20:38:39 UTC (rev 45432)
@@ -1,7 +1,7 @@
% Copyright 2012--\today Alexander Grahn
%
% This material is subject to the LaTeX Project Public License. See
-% http://mirrors.ctan.org/tex-archive/macros/latex/base/lppl.txt
+% http://mirrors.ctan.org/macros/latex/base/lppl.txt
% for the details of that license.
%
\pdfcompresslevel=0
Modified: trunk/Master/texmf-dist/tex/latex/media9/javascript/3Dmenu.js
===================================================================
--- trunk/Master/texmf-dist/tex/latex/media9/javascript/3Dmenu.js 2017-09-29 20:38:25 UTC (rev 45431)
+++ trunk/Master/texmf-dist/tex/latex/media9/javascript/3Dmenu.js 2017-09-29 20:38:39 UTC (rev 45432)
@@ -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'.
//
Modified: trunk/Master/texmf-dist/tex/latex/media9/javascript/3Dspintool.js
===================================================================
--- trunk/Master/texmf-dist/tex/latex/media9/javascript/3Dspintool.js 2017-09-29 20:38:25 UTC (rev 45431)
+++ trunk/Master/texmf-dist/tex/latex/media9/javascript/3Dspintool.js 2017-09-29 20:38:39 UTC (rev 45432)
@@ -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'.
//
Modified: trunk/Master/texmf-dist/tex/latex/media9/javascript/animation.js
===================================================================
--- trunk/Master/texmf-dist/tex/latex/media9/javascript/animation.js 2017-09-29 20:38:25 UTC (rev 45431)
+++ trunk/Master/texmf-dist/tex/latex/media9/javascript/animation.js 2017-09-29 20:38:39 UTC (rev 45432)
@@ -23,7 +23,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'.
//
Modified: trunk/Master/texmf-dist/tex/latex/media9/javascript/asylabels.js
===================================================================
--- trunk/Master/texmf-dist/tex/latex/media9/javascript/asylabels.js 2017-09-29 20:38:25 UTC (rev 45431)
+++ trunk/Master/texmf-dist/tex/latex/media9/javascript/asylabels.js 2017-09-29 20:38:39 UTC (rev 45432)
@@ -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'.
//
Modified: trunk/Master/texmf-dist/tex/latex/media9/media9.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/media9/media9.sty 2017-09-29 20:38:25 UTC (rev 45431)
+++ trunk/Master/texmf-dist/tex/latex/media9/media9.sty 2017-09-29 20:38:39 UTC (rev 45432)
@@ -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 at mix@date at tl{2017/08/25}
-\def\g at mix@version at tl{0.85}
+\def\g at mix@date at tl{2017/09/29}
+\def\g at mix@version at tl{0.86}
\def\g at mix@liiikerneldate{2017/05/29}
\def\g at mix@liiipkgdate{2017/05/29}
@@ -812,7 +812,7 @@
\mix at btn@dim=\dimexpr\baselineskip*3\relax%
\ifdim#1<\mix at btn@dim\mix at btn@dim=#1\fi%
\ifdim#2<\mix at btn@dim\mix at btn@dim=#2\fi%
- \tikz[x=\mix at btn@dim,y=\mix at btn@dim,transparency group]{%
+ \tikz[x=\mix at btn@dim,y=\mix at 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 at btn@dim=\dimexpr\baselineskip*3\relax%
\ifdim#1<\mix at btn@dim\mix at btn@dim=#1\fi%
\ifdim#2<\mix at btn@dim\mix at btn@dim=#2\fi%
- \tikz[x=\mix at btn@dim,y=\mix at btn@dim,transparency group]{%
+ \tikz[x=\mix at btn@dim,y=\mix at 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);
Modified: trunk/Master/texmf-dist/tex/latex/media9/pdfbase.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/media9/pdfbase.sty 2017-09-29 20:38:25 UTC (rev 45431)
+++ trunk/Master/texmf-dist/tex/latex/media9/pdfbase.sty 2017-09-29 20:38:39 UTC (rev 45432)
@@ -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 at pbs@date at tl{2017/08/25}
-\def\g at pbs@version at tl{0.17}
+\def\g at pbs@date at tl{2017/09/29}
+\def\g at pbs@version at tl{0.18}
\ProvidesExplPackage{pdfbase}{\g at pbs@date at tl}{\g at pbs@version at 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 at obj\int_use:N\g_pbs_obj_int}
@@ -573,7 +611,7 @@
/Properties~<</rm at 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 at cury~exch~def~/pbs at curx~exch~def~
@@ -816,6 +870,10 @@
pbs at llx~pbs at curx~sub~pbs at lly~pbs at cury~sub~
pbs at urx~pbs at curx~sub~pbs at ury~pbs at 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 at obj\int_use:N\g_pbs_obj_int}~<<\l_tmpa_tl>>~
- /PUT~pdfmark}
+ \special{ps:~
+ product~(Ghostscript)~search~{
+ pop~pop~pop~
+ mark~{pbs at obj\int_use:N\g_pbs_obj_int}~<<\l_tmpa_tl>>~/PUT~pdfmark
+ }{pop}ifelse
+ }
}
\tl_gset:Nx\g_pbs_pdflastxform_tl{{pbs at obj\int_use:N\g_pbs_obj_int}}
\int_gincr:N\g_pbs_obj_int
More information about the tex-live-commits
mailing list