[latex3-commits] [git/LaTeX3-latex3-latex3] master: \driver_pdf_object_last: (6688806)
Joseph Wright
joseph.wright at morningstar2.co.uk
Thu May 30 14:34:38 CEST 2019
Repository : https://github.com/latex3/latex3
On branch : master
Link : https://github.com/latex3/latex3/commit/6688806bf16e6fc664a4ea898a046ea650998f7c
>---------------------------------------------------------------
commit 6688806bf16e6fc664a4ea898a046ea650998f7c
Author: Joseph Wright <joseph.wright at morningstar2.co.uk>
Date: Thu May 30 13:34:38 2019 +0100
\driver_pdf_object_last:
>---------------------------------------------------------------
6688806bf16e6fc664a4ea898a046ea650998f7c
l3kernel/l3drivers-pdf.dtx | 31 +++++++++++++++++++++++++++++++
l3kernel/l3drivers.dtx | 8 ++++++++
l3kernel/testfiles/m3expl001.luatex.tlg | 1 +
l3kernel/testfiles/m3expl001.ptex.tlg | 1 +
l3kernel/testfiles/m3expl001.tlg | 1 +
l3kernel/testfiles/m3expl001.uptex.tlg | 1 +
l3kernel/testfiles/m3expl001.xetex.tlg | 1 +
l3kernel/testfiles/m3expl003.luatex.tlg | 1 +
l3kernel/testfiles/m3expl003.ptex.tlg | 1 +
l3kernel/testfiles/m3expl003.tlg | 1 +
l3kernel/testfiles/m3expl003.uptex.tlg | 1 +
l3kernel/testfiles/m3expl003.xetex.tlg | 1 +
12 files changed, 49 insertions(+)
diff --git a/l3kernel/l3drivers-pdf.dtx b/l3kernel/l3drivers-pdf.dtx
index efef2c9..f558d21 100644
--- a/l3kernel/l3drivers-pdf.dtx
+++ b/l3kernel/l3drivers-pdf.dtx
@@ -213,6 +213,14 @@
% \end{macrocode}
% \end{macro}
%
+% \begin{macro}[EXP]{\driver_pdf_object_last:}
+% Much like the annotation version.
+% \begin{macrocode}
+\cs_new:Npn \driver_pdf_object_last:
+ { { driver.obj \int_use:N \g_@@_pdf_object_int } }
+% \end{macrocode}
+% \end{macro}
+%
% \subsubsection{Annotations}
%
% In \texttt{dvips}, annotations have to be constructed manually. As such,
@@ -1496,6 +1504,20 @@
% \end{macrocode}
% \end{macro}
%
+% \begin{macro}[EXP]{\driver_pdf_object_last:}
+% Much like annotation.
+% \begin{macrocode}
+\cs_new:Npx \driver_pdf_object_last:
+ {
+ \exp_not:N \tex_the:D
+ \cs_if_exist:NTF \tex_pdffeedback:D
+ { \exp_not:N \tex_pdffeedback:D lastobj }
+ { \exp_not:N \tex_pdflastobj:D }
+ 0 ~ R
+ }
+% \end{macrocode}
+% \end{macro}
+%
% \subsubsection{Structure}
%
% \begin{macro}{\driver_pdf_compresslevel:n}
@@ -1716,6 +1738,13 @@
% \end{macrocode}
% \end{macro}
%
+% \begin{macro}{\driver_pdf_object_last:}
+% \begin{macrocode}
+\cs_new:Npn \driver_pdf_object_last:
+ { @driver.obj \int_use:N \g_@@_pdf_object_int }
+% \end{macrocode}
+% \end{macro}
+%
% \subsubsection{Annotations}
%
% \begin{variable}{\g_@@_landscape_bool}
@@ -1958,6 +1987,7 @@
% \begin{macro}[EXP]{\driver_pdf_object_ref:n}
% \begin{macro}{\driver_pdf_object_write:nn, , \driver_pdf_object_write:nx}
% \begin{macro}{\driver_pdf_object_now:nn, , \driver_pdf_object_now:nx}
+% \begin{macro}{\driver_pdf_object_last:}
% All no-ops here.
% \begin{macrocode}
\cs_new_protected:Npn \driver_pdf_object_new:nn #1#2 { }
@@ -1966,6 +1996,7 @@
\cs_new_protected:Npn \driver_pdf_object_write:nx #1#2 { }
\cs_new_protected:Npn \driver_pdf_object_now:nn #1#2 { }
\cs_new_protected:Npn \driver_pdf_object_now:nx #1#2 { }
+\cs_new:Npn \driver_pdf_object_last: { }
% \end{macrocode}
% \end{macro}
% \end{macro}
diff --git a/l3kernel/l3drivers.dtx b/l3kernel/l3drivers.dtx
index de1b42a..86b2930 100644
--- a/l3kernel/l3drivers.dtx
+++ b/l3kernel/l3drivers.dtx
@@ -714,6 +714,14 @@
% but is not referred to separately.
% \end{function}
%
+% \begin{function}[EXP, added = 2019-05-29]{\driver_pdf_object_last:}
+% \begin{syntax}
+% \cs{driver_pdf_object_last:}
+% \end{syntax}
+% Expands to the object reference of the last object: most useful for
+% anonymous objects.
+% \end{function}
+%
% \subsection{PDF structure}
%
% \begin{function}{\driver_pdf_compresslevel:n}
diff --git a/l3kernel/testfiles/m3expl001.luatex.tlg b/l3kernel/testfiles/m3expl001.luatex.tlg
index e2ef93a..daacbbc 100644
--- a/l3kernel/testfiles/m3expl001.luatex.tlg
+++ b/l3kernel/testfiles/m3expl001.luatex.tlg
@@ -6526,6 +6526,7 @@ Defining \__driver_exp_not_i:nn on line ...
Defining \__driver_exp_not_ii:nn on line ...
Defining \driver_pdf_object_now:nn on line ...
Defining \driver_pdf_object_now:nx on line ...
+Defining \driver_pdf_object_last: on line ...
Defining \driver_pdf_compresslevel:n on line ...
Defining \driver_pdf_compress_objects:n on line ...
Defining \__driver_pdf_objcompresslevel:n on line ...
diff --git a/l3kernel/testfiles/m3expl001.ptex.tlg b/l3kernel/testfiles/m3expl001.ptex.tlg
index 82618d8..483ed6b 100644
--- a/l3kernel/testfiles/m3expl001.ptex.tlg
+++ b/l3kernel/testfiles/m3expl001.ptex.tlg
@@ -6515,6 +6515,7 @@ Defining \__driver_pdf_object_write_stream:nn on line ...
Defining \__driver_pdf_object_write_stream:nnnn on line ...
Defining \driver_pdf_object_now:nn on line ...
Defining \driver_pdf_object_now:nx on line ...
+Defining \driver_pdf_object_last: on line ...
Defining \g__driver_landscape_bool on line ...
Defining \g__driver_pdf_annotation_int on line ...
\g__driver_pdf_annotation_int=\count...
diff --git a/l3kernel/testfiles/m3expl001.tlg b/l3kernel/testfiles/m3expl001.tlg
index 0830706..37e9edf 100644
--- a/l3kernel/testfiles/m3expl001.tlg
+++ b/l3kernel/testfiles/m3expl001.tlg
@@ -6823,6 +6823,7 @@ Defining \__driver_exp_not_i:nn on line ...
Defining \__driver_exp_not_ii:nn on line ...
Defining \driver_pdf_object_now:nn on line ...
Defining \driver_pdf_object_now:nx on line ...
+Defining \driver_pdf_object_last: on line ...
Defining \driver_pdf_compresslevel:n on line ...
Defining \driver_pdf_compress_objects:n on line ...
Defining \__driver_pdf_objcompresslevel:n on line ...
diff --git a/l3kernel/testfiles/m3expl001.uptex.tlg b/l3kernel/testfiles/m3expl001.uptex.tlg
index 4ea5fba..f398e12 100644
--- a/l3kernel/testfiles/m3expl001.uptex.tlg
+++ b/l3kernel/testfiles/m3expl001.uptex.tlg
@@ -6812,6 +6812,7 @@ Defining \__driver_pdf_object_write_stream:nn on line ...
Defining \__driver_pdf_object_write_stream:nnnn on line ...
Defining \driver_pdf_object_now:nn on line ...
Defining \driver_pdf_object_now:nx on line ...
+Defining \driver_pdf_object_last: on line ...
Defining \g__driver_landscape_bool on line ...
Defining \g__driver_pdf_annotation_int on line ...
\g__driver_pdf_annotation_int=\count...
diff --git a/l3kernel/testfiles/m3expl001.xetex.tlg b/l3kernel/testfiles/m3expl001.xetex.tlg
index 6ffe2a8..e8c0974 100644
--- a/l3kernel/testfiles/m3expl001.xetex.tlg
+++ b/l3kernel/testfiles/m3expl001.xetex.tlg
@@ -6526,6 +6526,7 @@ Defining \__driver_pdf_object_write_stream:nn on line ...
Defining \__driver_pdf_object_write_stream:nnnn on line ...
Defining \driver_pdf_object_now:nn on line ...
Defining \driver_pdf_object_now:nx on line ...
+Defining \driver_pdf_object_last: on line ...
Defining \g__driver_landscape_bool on line ...
Defining \g__driver_pdf_annotation_int on line ...
\g__driver_pdf_annotation_int=\count...
diff --git a/l3kernel/testfiles/m3expl003.luatex.tlg b/l3kernel/testfiles/m3expl003.luatex.tlg
index e2ef93a..daacbbc 100644
--- a/l3kernel/testfiles/m3expl003.luatex.tlg
+++ b/l3kernel/testfiles/m3expl003.luatex.tlg
@@ -6526,6 +6526,7 @@ Defining \__driver_exp_not_i:nn on line ...
Defining \__driver_exp_not_ii:nn on line ...
Defining \driver_pdf_object_now:nn on line ...
Defining \driver_pdf_object_now:nx on line ...
+Defining \driver_pdf_object_last: on line ...
Defining \driver_pdf_compresslevel:n on line ...
Defining \driver_pdf_compress_objects:n on line ...
Defining \__driver_pdf_objcompresslevel:n on line ...
diff --git a/l3kernel/testfiles/m3expl003.ptex.tlg b/l3kernel/testfiles/m3expl003.ptex.tlg
index 82618d8..483ed6b 100644
--- a/l3kernel/testfiles/m3expl003.ptex.tlg
+++ b/l3kernel/testfiles/m3expl003.ptex.tlg
@@ -6515,6 +6515,7 @@ Defining \__driver_pdf_object_write_stream:nn on line ...
Defining \__driver_pdf_object_write_stream:nnnn on line ...
Defining \driver_pdf_object_now:nn on line ...
Defining \driver_pdf_object_now:nx on line ...
+Defining \driver_pdf_object_last: on line ...
Defining \g__driver_landscape_bool on line ...
Defining \g__driver_pdf_annotation_int on line ...
\g__driver_pdf_annotation_int=\count...
diff --git a/l3kernel/testfiles/m3expl003.tlg b/l3kernel/testfiles/m3expl003.tlg
index 0830706..37e9edf 100644
--- a/l3kernel/testfiles/m3expl003.tlg
+++ b/l3kernel/testfiles/m3expl003.tlg
@@ -6823,6 +6823,7 @@ Defining \__driver_exp_not_i:nn on line ...
Defining \__driver_exp_not_ii:nn on line ...
Defining \driver_pdf_object_now:nn on line ...
Defining \driver_pdf_object_now:nx on line ...
+Defining \driver_pdf_object_last: on line ...
Defining \driver_pdf_compresslevel:n on line ...
Defining \driver_pdf_compress_objects:n on line ...
Defining \__driver_pdf_objcompresslevel:n on line ...
diff --git a/l3kernel/testfiles/m3expl003.uptex.tlg b/l3kernel/testfiles/m3expl003.uptex.tlg
index 4ea5fba..f398e12 100644
--- a/l3kernel/testfiles/m3expl003.uptex.tlg
+++ b/l3kernel/testfiles/m3expl003.uptex.tlg
@@ -6812,6 +6812,7 @@ Defining \__driver_pdf_object_write_stream:nn on line ...
Defining \__driver_pdf_object_write_stream:nnnn on line ...
Defining \driver_pdf_object_now:nn on line ...
Defining \driver_pdf_object_now:nx on line ...
+Defining \driver_pdf_object_last: on line ...
Defining \g__driver_landscape_bool on line ...
Defining \g__driver_pdf_annotation_int on line ...
\g__driver_pdf_annotation_int=\count...
diff --git a/l3kernel/testfiles/m3expl003.xetex.tlg b/l3kernel/testfiles/m3expl003.xetex.tlg
index 6ffe2a8..e8c0974 100644
--- a/l3kernel/testfiles/m3expl003.xetex.tlg
+++ b/l3kernel/testfiles/m3expl003.xetex.tlg
@@ -6526,6 +6526,7 @@ Defining \__driver_pdf_object_write_stream:nn on line ...
Defining \__driver_pdf_object_write_stream:nnnn on line ...
Defining \driver_pdf_object_now:nn on line ...
Defining \driver_pdf_object_now:nx on line ...
+Defining \driver_pdf_object_last: on line ...
Defining \g__driver_landscape_bool on line ...
Defining \g__driver_pdf_annotation_int on line ...
\g__driver_pdf_annotation_int=\count...
More information about the latex3-commits
mailing list