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