[latex3-commits] [git/LaTeX3-latex3-latex3] master: Use expr evaluation for args in l3drivers (e00c405)
Joseph Wright
joseph.wright at morningstar2.co.uk
Thu Apr 26 12:28:00 CEST 2018
Repository : https://github.com/latex3/latex3
On branch : master
Link : https://github.com/latex3/latex3/commit/e00c4059008de773793a61503580af3def00b2a4
>---------------------------------------------------------------
commit e00c4059008de773793a61503580af3def00b2a4
Author: Joseph Wright <joseph.wright at morningstar2.co.uk>
Date: Thu Apr 26 09:10:12 2018 +0100
Use expr evaluation for args in l3drivers
Many of the functions already needed expr evaluation for underlying
implmentation reasons. The hit is therefore mainly in color functions.
>---------------------------------------------------------------
e00c4059008de773793a61503580af3def00b2a4
l3kernel/l3drivers.dtx | 189 +++++++++++++++++++++++++------
l3kernel/testfiles/m3expl001.luatex.tlg | 6 +
l3kernel/testfiles/m3expl001.ptex.tlg | 3 +
l3kernel/testfiles/m3expl001.tlg | 6 +
l3kernel/testfiles/m3expl001.uptex.tlg | 3 +
l3kernel/testfiles/m3expl001.xetex.tlg | 3 +
l3kernel/testfiles/m3expl003.luatex.tlg | 6 +
l3kernel/testfiles/m3expl003.ptex.tlg | 3 +
l3kernel/testfiles/m3expl003.tlg | 6 +
l3kernel/testfiles/m3expl003.uptex.tlg | 3 +
l3kernel/testfiles/m3expl003.xetex.tlg | 3 +
11 files changed, 197 insertions(+), 34 deletions(-)
diff --git a/l3kernel/l3drivers.dtx b/l3kernel/l3drivers.dtx
index 31d2b09..2eb2c06 100644
--- a/l3kernel/l3drivers.dtx
+++ b/l3kernel/l3drivers.dtx
@@ -97,24 +97,28 @@
%
% \section{Box rotation and scaling}
%
-% \begin{function}[added = 2017-12-13]{\driver_box_use_rotate:Nn}
+% \begin{function}[added = 2017-12-13, updated = 2018-04-26]
+% {\driver_box_use_rotate:Nn}
% \begin{syntax}
% \cs{driver_box_use_rotate:Nn} \meta{box} \Arg{angle}
% \end{syntax}
% Inserts the content of the \meta{box} at the current insertion point
-% rotated by the \meta{angle} (expressed in degrees). The material is
+% rotated by the \meta{angle} (an \meta{fp expression} expressed in degrees).
+% The material is
% rotated such the the \TeX{} reference point of the box is the center of
% rotation and remains the reference point after rotation. It is the
% responsibility of the code using this function to adjust the apparent
% size of the inserted material.
% \end{function}
%
-% \begin{function}[added = 2017-12-13]{\driver_box_use_scale:Nnn}
+% \begin{function}[added = 2017-12-13, updated = 2018-04-26]
+% {\driver_box_use_scale:Nnn}
% \begin{syntax}
% \cs{driver_box_use_scale:Nnn} \meta{box} \Arg{x-scale} \Arg{y-scale}
% \end{syntax}
% Inserts the content of the \meta{box} at the current insertion point
-% scale by the \meta{x-scale} and \meta{y-scale}. The reference point
+% scale by the \meta{x-scale} and \meta{y-scale} (both \meta{fp expressions}).
+% The reference point
% of the material will be unchanged. It is the responsibility of the
% code using this function to adjust the apparent size of the inserted
% material.
@@ -381,10 +385,11 @@
%
% \begin{function}{\driver_draw_miterlimit:n}
% \begin{syntax}
-% \cs{driver_draw_miterlimit:n} \Arg{dimexpr}
+% \cs{driver_draw_miterlimit:n} \Arg{factor}
% \end{syntax}
% Sets the miter limit of lines joined as a miter, as described in the
-% PDF and PostScript manuals.
+% PDF and PostScript manuals. The \meta{factor} here is an
+% \meta{fp expression}.
% \end{function}
%
% \subsection{Color}
@@ -575,17 +580,27 @@
% \begin{macro}{\driver_color_gray:n}
% \begin{macro}{\driver_color_rgb:nnn}
% \begin{macro}{\driver_color_spot:nn}
-% \begin{macro}{\@@_color_select:n}
+% \begin{macro}{\@@_color_select:n, \@@_color_select:x}
% \begin{macro}{\@@_color_reset:}
% Push the data to the stack. In the case of \texttt{dvips} also reset the
% drawing fill color in raw PostScript.
% \begin{macrocode}
\cs_new_protected:Npn \driver_color_cmyk:nnnn #1#2#3#4
- { \@@_color_select:n { cmyk~ #1 ~ #2 ~ #3 ~ #4 } }
+ {
+ \@@_color_select:x
+ {
+ cmyk~
+ \fp_eval:n {#1} ~ \fp_eval:n {#2} ~
+ \fp_eval:n {#3} ~ \fp_eval:n {#4}
+ }
+ }
\cs_new_protected:Npn \driver_color_gray:n #1
- { \@@_color_select:n { gray~ #1 } }
+ { \@@_color_select:x { gray~ \fp_eval:n {#1} } }
\cs_new_protected:Npn \driver_color_rgb:nnn #1#2#3
- { \@@_color_select:n { rgb~ #1 ~ #2 ~ #3 } }
+ {
+ \@@_color_select:x
+ { rgb~ \fp_eval:n {#1} ~ \fp_eval:n {#2} ~ \fp_eval:n {#3} }
+ }
\cs_new_protected:Npn \driver_color_spot:nn #1#2
{ \@@_color_select:n { \c_space_tl #1 } }
\cs_new_protected:Npn \@@_color_select:n #1
@@ -596,6 +611,7 @@
%</dvips>
\group_insert_after:N \@@_color_reset:
}
+\cs_generate_variant:Nn \@@_color_select:n { x }
\cs_new_protected:Npn \@@_color_reset:
{ \@@_literal:n { color~pop } }
% \end{macrocode}
@@ -675,19 +691,42 @@
% \end{macrocode}
% \end{variable}
%
-% \begin{macro}{\driver_color_cmyk:nnnn}
-% \begin{macro}{\driver_color_gray:n}
-% \begin{macro}{\driver_color_rgb:nnn}
+% \begin{macro}{\driver_color_cmyk:nnnn, \@@_color_cmyk:nnnn}
+% \begin{macro}{\driver_color_gray:n, @@_color_gray:n}
+% \begin{macro}{\driver_color_rgb:nnn, \@@_color_rgb:nnn}
% \begin{macro}{\driver_color_spot:nn}
-% \begin{macro}{\@@_color_select:n}
+% \begin{macro}{\@@_color_select:n, \@@_color_select:x}
% \begin{macro}{\@@_color_reset:}
% Simply dump the data, but allowing for \LuaTeX{}.
% \begin{macrocode}
\cs_new_protected:Npn \driver_color_cmyk:nnnn #1#2#3#4
+ {
+ \use:x
+ {
+ \@@_color_cmyk:nnnn
+ { \fp_eval:n {#1} }
+ { \fp_eval:n {#2} }
+ { \fp_eval:n {#3} }
+ { \fp_eval:n {#4} }
+ }
+ }
+\cs_new_protected:Npn \@@_color_cmyk:nnnn #1#2#3#4
{ \@@_color_select:n { #1 ~ #2 ~ #3 ~ #4 ~ k ~ #1 ~ #2 ~ #3 ~ #4 ~ K } }
\cs_new_protected:Npn \driver_color_gray:n #1
+ { \exp_args:Nx \@@_color_gray:n { \fp_eval:n {#1} } }
+\cs_new_protected:Npn \@@_color_gray:n #1
{ \@@_color_select:n { #1 ~ g ~ #1 ~ G } }
\cs_new_protected:Npn \driver_color_rgb:nnn #1#2#3
+ {
+ \use:x
+ {
+ \@@_color_rgb:nnn
+ { \fp_eval:n {#1} }
+ { \fp_eval:n {#2} }
+ { \fp_eval:n {#3} }
+ }
+ }
+\cs_new_protected:Npn \@@_color_rgb:nnn #1#2#3
{ \@@_color_select:n { #1 ~ #2 ~ #3 ~ rg ~ #1 ~ #2 ~ #3 ~ RG } }
\cs_new_protected:Npn \driver_color_spot:nn #1#2
{ \@@_color_select:n { /#1 ~ cs ~ /#1 ~ CS ~ #2 ~ sc ~ #2 ~ SC } }
@@ -699,6 +738,7 @@
\exp_not:N \l_@@_color_stack_int push {#1}
\group_insert_after:N \exp_not:N \@@_color_reset:
}
+\cs_generate_variant:Nn \@@_color_select:n { x }
\cs_new_protected:Npx \@@_color_reset:
{
\cs_if_exist:NTF \luatex_pdfextension:D
@@ -810,11 +850,14 @@
% \end{macro}
%
% \begin{macro}{\driver_box_use_rotate:Nn}
+% \begin{macro}{\@@_box_use_rotate:Nn}
% Rotating using \texttt{dvips} does not require that the box dimensions
% are altered and has a very convenient built-in operation. Zero rotation
% must be written as |0| not |-0| so there is a quick test.
% \begin{macrocode}
\cs_new_protected:Npn \driver_box_use_rotate:Nn #1#2
+ { \exp_args:NNf \@@_box_use_rotate:Nn #1 { \fp_eval:n {#2} } }
+\cs_new_protected:Npn \@@_box_use_rotate:Nn #1#2
{
\@@_scope_begin:
\@@_align_currentpoint_begin:
@@ -831,6 +874,7 @@
}
% \end{macrocode}
% \end{macro}
+% \end{macro}
%
% \begin{macro}{\driver_box_use_scale:Nnn}
% The \texttt{dvips} driver once again has a dedicated operation we can
@@ -1112,7 +1156,7 @@
{ \dim_to_decimal_in_bp:n {#1} ~ setlinewidth }
}
\cs_new_protected:Npn \driver_draw_miterlimit:n #1
- { \@@_draw_literal:n { #1 ~ setmiterlimit } }
+ { \@@_draw_literal:x { \fp_eval:n {#1} ~ setmiterlimit } }
\cs_new_protected:Npn \driver_draw_cap_butt:
{ \@@_draw_literal:n { 0 ~ setlinecap } }
\cs_new_protected:Npn \driver_draw_cap_round:
@@ -1147,31 +1191,57 @@
% \driver_draw_color_fill_rgb:nnn ,
% \driver_draw_color_stroke_rgb:nnn
% }
-% \begin{macro}{\@@_draw_color_fill:n, \@@_draw_color_stroke:n}
+% \begin{macro}
+% {
+% \@@_draw_color_fill:n, \@@_draw_color_fill:x,
+% \@@_draw_color_stroke:n, \@@_draw_color_stroke:x
+% }
% For \texttt{dvips}, we can use the standard color stack to deal with
% stroke color, but for fills have to switch to raw PostScript. This is
% thus not handled by the stack, but the context is very restricted. See
% also how fills are implemented.
% \begin{macrocode}
\cs_new_protected:Npn \driver_draw_color_fill_cmyk:nnnn #1#2#3#4
- { \@@_draw_fill:n { #1 ~ #2 ~ #3 ~ #4 ~ setcmykcolor } }
+ {
+ \@@_draw_color_fill:x
+ {
+ \fp_eval:n {#1} ~ \fp_eval:n {#2} ~
+ \fp_eval:n {#3} ~ \fp_eval:n {#4} ~
+ setcmykcolor
+ }
+ }
\cs_new_protected:Npn \driver_draw_color_stroke_cmyk:nnnn #1#2#3#4
- { \@@_draw_stroke:n { cmyk ~ #1 ~ #2 ~ #3 ~ #4 } }
+ {
+ \@@_draw_color_stroke:x
+ {
+ cmyk ~
+ \fp_eval:n {#1} ~ \fp_eval:n {#2} ~
+ \fp_eval:n {#3} ~ \fp_eval:n {#4}
+ }
+ }
\cs_new_protected:Npn \driver_draw_color_fill_gray:n #1
- { \@@_draw_fill:n { #1 ~ setgray } }
+ { \@@_draw_color_fill:x { \fp_eval:n {#1} ~ setgray } }
\cs_new_protected:Npn \driver_draw_color_stroke_gray:n #1
- { \@@_draw_stroke:n { gray ~ #1 } }
+ { \@@_draw_color_stroke:x { gray ~ \fp_eval:n {#1} } }
\cs_new_protected:Npn \driver_draw_color_fill_rgb:nnn #1#2#3
- { \@@_draw_fill:n { #1 ~ #2 ~ #3 ~ setrgbcolor } }
+ {
+ \@@_draw_color_fill:x
+ { \fp_eval:n {#1} ~ \fp_eval:n {#2} ~ \fp_eval:n {#3} ~ setrgbcolor }
+ }
\cs_new_protected:Npn \driver_draw_color_stroke_rgb:nnn #1#2#3
- { \@@_draw_stroke:n { rgb ~ #1 ~ #2 ~ #3 } }
+ {
+ \@@_draw_color_stroke:x
+ { rgb ~ \fp_eval:n {#1} ~ \fp_eval:n {#2} ~ \fp_eval:n {#3} }
+ }
\cs_new_protected:Npn \@@_draw_color_fill:n #1
{ \@@_draw_literal:n { /l3fc ~ { #1 } ~ def } }
+\cs_generate_variant:Nn \@@_draw_color_fill:n { x }
\cs_new_protected:Npn \@@_draw_color_stroke:n #1
{
\@@_literal:n { color~push~#1 }
\group_insert_after:N \@@_color_reset:
}
+\cs_generate_variant:Nn \@@_draw_color_stroke:n { x }
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -1186,7 +1256,17 @@
% path available and simply dump the matrix as given.
% \begin{macrocode}
\cs_new_protected:Npn \driver_draw_cm:nnnn #1#2#3#4
- { \@@_draw_literal:n { [#1 ~ #2 ~ #3 ~ #4 ~ 0 ~ 0 ] ~ concat } }
+ {
+ \@@_draw_literal:n
+ {
+ [
+ \fp_eval:n {#1} ~ \fp_eval:n {#2} ~
+ \fp_eval:n {#3} ~ \fp_eval:n {#4} ~
+ 0 ~ 0
+ ] ~
+ concat
+ }
+ }
% \end{macrocode}
% \end{macro}
%
@@ -1329,6 +1409,7 @@
% \end{macro}
%
% \begin{macro}{\driver_box_use_rotate:Nn}
+% \begin{macro}{\@@_box_use_rotate:Nn}
% \begin{variable}{\l_@@_cos_fp, \l_@@_sin_fp}
% Rotations are set using an affine transformation matrix which therefore
% requires sine/cosine values not the angle itself. We store the rounded
@@ -1338,6 +1419,8 @@
% after rounding.
% \begin{macrocode}
\cs_new_protected:Npn \driver_box_use_rotate:Nn #1#2
+ { \exp_args:NNf \@@_box_use_rotate:Nn #1 { \fp_eval:n {#2} } }
+\cs_new_protected:Npn \@@_box_use_rotate:Nn #1#2
{
\@@_scope_begin:
\box_set_wd:Nn #1 { 0pt }
@@ -1366,6 +1449,7 @@
% \end{macrocode}
% \end{variable}
% \end{macro}
+% \end{macro}
%
% \begin{macro}{\driver_box_use_scale:Nnn}
% The same idea as for rotation but without the complexity of signs and
@@ -1560,15 +1644,18 @@
% \end{macro}
%
% \begin{macro}{\driver_box_use_rotate:Nn}
+% \begin{macro}{\@@_box_use_rotate:Nn}
% Rotating in \texttt{(x)}dvipdmfx can be implemented using either PDF or
% driver-specific code. The former approach however is not \enquote{aware}
% of the content of boxes: this means that any embedded links would not be
-% adjusted by the rotation. As such, the driver-native approach is prefered:
+% adjusted by the rotation. As such, the driver-native approach is preferred:
% the code therefore is similar (though not identical) to the \texttt{dvips}
% version (notice the rotation angle here is positive). As for
% \texttt{dvips}, zero rotation is written as |0| not |-0|.
% \begin{macrocode}
\cs_new_protected:Npn \driver_box_use_rotate:Nn #1#2
+ { \exp_args:NNf \@@_box_use_rotate:Nn #1 { \fp_eval:n {#2} } }
+\cs_new_protected:Npn \@@_box_use_rotate:Nn #1#2
{
\@@_scope_begin:
\@@_literal:x
@@ -1583,6 +1670,7 @@
}
% \end{macrocode}
% \end{macro}
+% \end{macro}
%
% \begin{macro}{\driver_box_use_scale:Nnn}
% Much the same idea for scaling: use the higher-level driver operation to allow
@@ -2005,7 +2093,7 @@
{ \dim_to_decimal_in_bp:n {#1} ~ w }
}
\cs_new_protected:Npn \driver_draw_miterlimit:n #1
- { \@@_draw_literal:x { #1 ~ M } }
+ { \@@_draw_literal:x { \fp_eval:n {#1} ~ M } }
\cs_new_protected:Npn \driver_draw_cap_butt:
{ \@@_draw_literal:n { 0 ~ J } }
\cs_new_protected:Npn \driver_draw_cap_round:
@@ -2040,33 +2128,56 @@
% \driver_draw_color_fill_rgb:nnn ,
% \driver_draw_color_stroke_rgb:nnn
% }
+% \begin{macro}{\@@_color_fill_select:n, \@@_color_fill_select:x}
% For the stroke color, all engines here can use the color stack to handle
% the setting. However, that is not the case for fill color: the stack in
% \texttt{(x)dvipdfmx} only covers one type of color. So we have to use
% different approaches for the two sets of engines.
% \begin{macrocode}
\cs_new_protected:Npn \driver_draw_color_fill_cmyk:nnnn #1#2#3#4
- { \@@_color_fill_select:n { #1 ~ #2 ~ #3 ~ #4 ~ k } }
+ {
+ \@@_color_fill_select:x
+ {
+ \fp_eval:n {#1} ~ \fp_eval:n {#2} ~
+ \fp_eval:n {#3} ~ \fp_eval:n {#4} ~
+ k
+ }
+ }
\cs_new_protected:Npn \driver_draw_color_stroke_cmyk:nnnn #1#2#3#4
- { \@@_color_select:n { #1 ~ #2 ~ #3 ~ #4 ~ K } }
+ {
+ \@@_color_select:x
+ {
+ \fp_eval:n {#1} ~ \fp_eval:n {#2} ~
+ \fp_eval:n {#3} ~ \fp_eval:n {#4} ~
+ k
+ }
+ }
\cs_new_protected:Npn \driver_draw_color_fill_gray:n #1
- { \@@_color_fill_select:n { #1 ~ g } }
+ { \@@_color_fill_select:x { \fp_eval:n {#1} ~ g } }
\cs_new_protected:Npn \driver_draw_color_stroke_gray:n #1
- { \@@_color_select:n { #1 ~ G } }
+ { \@@_color_select:x { \fp_eval:n {#1} ~ G } }
\cs_new_protected:Npn \driver_draw_color_fill_rgb:nnn #1#2#3
- { \@@_color_fill_select:n { #1 ~ #2 ~ #3 ~ rg } }
+ {
+ \@@_color_fill_select:x
+ { \fp_eval:n {#1} ~ \fp_eval:n {#2} ~ \fp_eval:n {#3} ~ rg }
+ }
\cs_new_protected:Npn \driver_draw_color_stroke_rgb:nnn #1#2#3
- { \@@_color_select:n { #1 ~ #2 ~ #3 ~ RG } }
+ {
+ \@@_color_select:x
+ { \fp_eval:n {#1} ~ \fp_eval:n {#2} ~ \fp_eval:n {#3} ~ RG }
+ }
%<*pdfmode>
\cs_new_eq:NN \@@_color_fill_select:n \@@_color_select:n
%</pdfmode>
%<*dvipdfmx|xdvipdfmx>
\cs_new_eq:NN \@@_color_fill_select:n \@@_draw_literal:n
%</dvipdfmx|xdvipdfmx>
+\cs_generate_variant:Nn \@@_color_fill_select:n { x }
% \end{macrocode}
% \end{macro}
% \end{macro}
% \end{macro}
+% \end{macro}
%
% \begin{macro}{\driver_draw_cm:nnnn}
% \begin{macro}{\@@_draw_cm:nnnn}
@@ -2081,7 +2192,11 @@
\cs_new_protected:Npn \driver_draw_cm:nnnn #1#2#3#4
{
%<*pdfmode>
- \@@_matrix:n { #1 ~ #2 ~ #3 ~ #4 }
+ \@@_matrix:x
+ {
+ \fp_eval:n {#1} ~ \fp_eval:n {#2} ~
+ \fp_eval:n {#3} ~ \fp_eval:n {#4}
+ }
%</pdfmode>
%<*dvipdfmx|xdvipdfmx>
\@@_draw_cm_decompose:nnnnN {#1} {#2} {#3} {#4}
@@ -2235,7 +2350,13 @@
\driver_draw_cm:nnnn {#2} {#3} {#4} {#5}
%</pdfmode>
%<*dvipdfmx|xdvipdfmx>
- \@@_literal:n { pdf:btrans~matrix~ #2 ~ #3 ~ #4 ~ #5 ~ 0 ~ 0 }
+ \@@_literal:x
+ {
+ pdf:btrans~matrix~
+ \fp_eval:n {#2} ~ \fp_eval:n {#3} ~
+ \fp_eval:n {#4} ~ \fp_eval:n {#5} ~
+ 0 ~ 0
+ }
%</dvipdfmx|xdvipdfmx>
\hbox_overlap_right:n { \box_use:N #1 }
%<*dvipdfmx|xdvipdfmx>
@@ -2726,7 +2847,7 @@
\cs_new_protected:Npn \driver_draw_linewidth:n #1
{ \@@_draw_scope:x { stroke-width=" \dim_to_decimal:n {#1} " } }
\cs_new_protected:Npn \driver_draw_miterlimit:n #1
- { \@@_draw_scope:x { stroke-miterlimit=" #1 " } }
+ { \@@_draw_scope:x { stroke-miterlimit=" \fp_eval:n {#1} " } }
\cs_new_protected:Npn \driver_draw_cap_butt:
{ \@@_draw_scope:n { stroke-linecap="butt" } }
\cs_new_protected:Npn \driver_draw_cap_round:
diff --git a/l3kernel/testfiles/m3expl001.luatex.tlg b/l3kernel/testfiles/m3expl001.luatex.tlg
index 43899b2..07f0464 100644
--- a/l3kernel/testfiles/m3expl001.luatex.tlg
+++ b/l3kernel/testfiles/m3expl001.luatex.tlg
@@ -5974,10 +5974,14 @@ Defining \driver_color_pickup:N on line ...
Defining \l__driver_color_stack_int on line ...
\l__driver_color_stack_int=\count...
Defining \driver_color_cmyk:nnnn on line ...
+Defining \__driver_color_cmyk:nnnn on line ...
Defining \driver_color_gray:n on line ...
+Defining \__driver_color_gray:n on line ...
Defining \driver_color_rgb:nnn on line ...
+Defining \__driver_color_rgb:nnn on line ...
Defining \driver_color_spot:nn on line ...
Defining \__driver_color_select:n on line ...
+Defining \__driver_color_select:x on line ...
Defining \__driver_color_reset: on line ...
Defining \__driver_literal_pdf:n on line ...
Defining \__driver_literal_pdf:x on line ...
@@ -5987,6 +5991,7 @@ Defining \__driver_matrix:n on line ...
Defining \__driver_matrix:x on line ...
Defining \driver_box_use_clip:N on line ...
Defining \driver_box_use_rotate:Nn on line ...
+Defining \__driver_box_use_rotate:Nn on line ...
Defining \l__driver_cos_fp on line ...
Defining \l__driver_sin_fp on line ...
Defining \driver_box_use_scale:Nnn on line ...
@@ -6036,6 +6041,7 @@ Defining \driver_draw_color_stroke_gray:n on line ...
Defining \driver_draw_color_fill_rgb:nnn on line ...
Defining \driver_draw_color_stroke_rgb:nnn on line ...
Defining \__driver_color_fill_select:n on line ...
+Defining \__driver_color_fill_select:x on line ...
Defining \driver_draw_cm:nnnn on line ...
Defining \driver_draw_box_use:Nnnnn on line ...
)
diff --git a/l3kernel/testfiles/m3expl001.ptex.tlg b/l3kernel/testfiles/m3expl001.ptex.tlg
index c11f36b..fb54e7b 100644
--- a/l3kernel/testfiles/m3expl001.ptex.tlg
+++ b/l3kernel/testfiles/m3expl001.ptex.tlg
@@ -5973,6 +5973,7 @@ Defining \driver_color_gray:n on line ...
Defining \driver_color_rgb:nnn on line ...
Defining \driver_color_spot:nn on line ...
Defining \__driver_color_select:n on line ...
+Defining \__driver_color_select:x on line ...
Defining \__driver_color_reset: on line ...
Defining \__driver_literal_pdf:n on line ...
Defining \__driver_literal_pdf:x on line ...
@@ -5980,6 +5981,7 @@ Defining \__driver_scope_begin: on line ...
Defining \__driver_scope_end: on line ...
Defining \driver_box_use_clip:N on line ...
Defining \driver_box_use_rotate:Nn on line ...
+Defining \__driver_box_use_rotate:Nn on line ...
Defining \driver_box_use_scale:Nnn on line ...
Defining \__driver_image_getbb_eps:n on line ...
Defining \__driver_image_getbb_jpg:n on line ...
@@ -6032,6 +6034,7 @@ Defining \driver_draw_color_stroke_gray:n on line ...
Defining \driver_draw_color_fill_rgb:nnn on line ...
Defining \driver_draw_color_stroke_rgb:nnn on line ...
Defining \__driver_color_fill_select:n on line ...
+Defining \__driver_color_fill_select:x on line ...
Defining \driver_draw_cm:nnnn on line ...
Defining \__driver_draw_cm:nnnn on line ...
Defining \__driver_draw_cm_decompose:nnnnN on line ...
diff --git a/l3kernel/testfiles/m3expl001.tlg b/l3kernel/testfiles/m3expl001.tlg
index 2d113a3..dee9b8e 100644
--- a/l3kernel/testfiles/m3expl001.tlg
+++ b/l3kernel/testfiles/m3expl001.tlg
@@ -6172,10 +6172,14 @@ Defining \driver_color_pickup:N on line ...
Defining \l__driver_color_stack_int on line ...
\l__driver_color_stack_int=\count...
Defining \driver_color_cmyk:nnnn on line ...
+Defining \__driver_color_cmyk:nnnn on line ...
Defining \driver_color_gray:n on line ...
+Defining \__driver_color_gray:n on line ...
Defining \driver_color_rgb:nnn on line ...
+Defining \__driver_color_rgb:nnn on line ...
Defining \driver_color_spot:nn on line ...
Defining \__driver_color_select:n on line ...
+Defining \__driver_color_select:x on line ...
Defining \__driver_color_reset: on line ...
Defining \__driver_literal_pdf:n on line ...
Defining \__driver_literal_pdf:x on line ...
@@ -6185,6 +6189,7 @@ Defining \__driver_matrix:n on line ...
Defining \__driver_matrix:x on line ...
Defining \driver_box_use_clip:N on line ...
Defining \driver_box_use_rotate:Nn on line ...
+Defining \__driver_box_use_rotate:Nn on line ...
Defining \l__driver_cos_fp on line ...
Defining \l__driver_sin_fp on line ...
Defining \driver_box_use_scale:Nnn on line ...
@@ -6234,6 +6239,7 @@ Defining \driver_draw_color_stroke_gray:n on line ...
Defining \driver_draw_color_fill_rgb:nnn on line ...
Defining \driver_draw_color_stroke_rgb:nnn on line ...
Defining \__driver_color_fill_select:n on line ...
+Defining \__driver_color_fill_select:x on line ...
Defining \driver_draw_cm:nnnn on line ...
Defining \driver_draw_box_use:Nnnnn on line ...
)
diff --git a/l3kernel/testfiles/m3expl001.uptex.tlg b/l3kernel/testfiles/m3expl001.uptex.tlg
index 504c1a7..10fcf3e 100644
--- a/l3kernel/testfiles/m3expl001.uptex.tlg
+++ b/l3kernel/testfiles/m3expl001.uptex.tlg
@@ -6172,6 +6172,7 @@ Defining \driver_color_gray:n on line ...
Defining \driver_color_rgb:nnn on line ...
Defining \driver_color_spot:nn on line ...
Defining \__driver_color_select:n on line ...
+Defining \__driver_color_select:x on line ...
Defining \__driver_color_reset: on line ...
Defining \__driver_literal_pdf:n on line ...
Defining \__driver_literal_pdf:x on line ...
@@ -6179,6 +6180,7 @@ Defining \__driver_scope_begin: on line ...
Defining \__driver_scope_end: on line ...
Defining \driver_box_use_clip:N on line ...
Defining \driver_box_use_rotate:Nn on line ...
+Defining \__driver_box_use_rotate:Nn on line ...
Defining \driver_box_use_scale:Nnn on line ...
Defining \__driver_image_getbb_eps:n on line ...
Defining \__driver_image_getbb_jpg:n on line ...
@@ -6231,6 +6233,7 @@ Defining \driver_draw_color_stroke_gray:n on line ...
Defining \driver_draw_color_fill_rgb:nnn on line ...
Defining \driver_draw_color_stroke_rgb:nnn on line ...
Defining \__driver_color_fill_select:n on line ...
+Defining \__driver_color_fill_select:x on line ...
Defining \driver_draw_cm:nnnn on line ...
Defining \__driver_draw_cm:nnnn on line ...
Defining \__driver_draw_cm_decompose:nnnnN on line ...
diff --git a/l3kernel/testfiles/m3expl001.xetex.tlg b/l3kernel/testfiles/m3expl001.xetex.tlg
index 9f29f3f..c3545da 100644
--- a/l3kernel/testfiles/m3expl001.xetex.tlg
+++ b/l3kernel/testfiles/m3expl001.xetex.tlg
@@ -5951,6 +5951,7 @@ Defining \driver_color_gray:n on line ...
Defining \driver_color_rgb:nnn on line ...
Defining \driver_color_spot:nn on line ...
Defining \__driver_color_select:n on line ...
+Defining \__driver_color_select:x on line ...
Defining \__driver_color_reset: on line ...
Defining \__driver_literal_pdf:n on line ...
Defining \__driver_literal_pdf:x on line ...
@@ -5958,6 +5959,7 @@ Defining \__driver_scope_begin: on line ...
Defining \__driver_scope_end: on line ...
Defining \driver_box_use_clip:N on line ...
Defining \driver_box_use_rotate:Nn on line ...
+Defining \__driver_box_use_rotate:Nn on line ...
Defining \driver_box_use_scale:Nnn on line ...
Defining \__driver_image_getbb_eps:n on line ...
Defining \g__driver_image_int on line ...
@@ -6019,6 +6021,7 @@ Defining \driver_draw_color_stroke_gray:n on line ...
Defining \driver_draw_color_fill_rgb:nnn on line ...
Defining \driver_draw_color_stroke_rgb:nnn on line ...
Defining \__driver_color_fill_select:n on line ...
+Defining \__driver_color_fill_select:x on line ...
Defining \driver_draw_cm:nnnn on line ...
Defining \__driver_draw_cm:nnnn on line ...
Defining \__driver_draw_cm_decompose:nnnnN on line ...
diff --git a/l3kernel/testfiles/m3expl003.luatex.tlg b/l3kernel/testfiles/m3expl003.luatex.tlg
index 43899b2..07f0464 100644
--- a/l3kernel/testfiles/m3expl003.luatex.tlg
+++ b/l3kernel/testfiles/m3expl003.luatex.tlg
@@ -5974,10 +5974,14 @@ Defining \driver_color_pickup:N on line ...
Defining \l__driver_color_stack_int on line ...
\l__driver_color_stack_int=\count...
Defining \driver_color_cmyk:nnnn on line ...
+Defining \__driver_color_cmyk:nnnn on line ...
Defining \driver_color_gray:n on line ...
+Defining \__driver_color_gray:n on line ...
Defining \driver_color_rgb:nnn on line ...
+Defining \__driver_color_rgb:nnn on line ...
Defining \driver_color_spot:nn on line ...
Defining \__driver_color_select:n on line ...
+Defining \__driver_color_select:x on line ...
Defining \__driver_color_reset: on line ...
Defining \__driver_literal_pdf:n on line ...
Defining \__driver_literal_pdf:x on line ...
@@ -5987,6 +5991,7 @@ Defining \__driver_matrix:n on line ...
Defining \__driver_matrix:x on line ...
Defining \driver_box_use_clip:N on line ...
Defining \driver_box_use_rotate:Nn on line ...
+Defining \__driver_box_use_rotate:Nn on line ...
Defining \l__driver_cos_fp on line ...
Defining \l__driver_sin_fp on line ...
Defining \driver_box_use_scale:Nnn on line ...
@@ -6036,6 +6041,7 @@ Defining \driver_draw_color_stroke_gray:n on line ...
Defining \driver_draw_color_fill_rgb:nnn on line ...
Defining \driver_draw_color_stroke_rgb:nnn on line ...
Defining \__driver_color_fill_select:n on line ...
+Defining \__driver_color_fill_select:x on line ...
Defining \driver_draw_cm:nnnn on line ...
Defining \driver_draw_box_use:Nnnnn on line ...
)
diff --git a/l3kernel/testfiles/m3expl003.ptex.tlg b/l3kernel/testfiles/m3expl003.ptex.tlg
index c11f36b..fb54e7b 100644
--- a/l3kernel/testfiles/m3expl003.ptex.tlg
+++ b/l3kernel/testfiles/m3expl003.ptex.tlg
@@ -5973,6 +5973,7 @@ Defining \driver_color_gray:n on line ...
Defining \driver_color_rgb:nnn on line ...
Defining \driver_color_spot:nn on line ...
Defining \__driver_color_select:n on line ...
+Defining \__driver_color_select:x on line ...
Defining \__driver_color_reset: on line ...
Defining \__driver_literal_pdf:n on line ...
Defining \__driver_literal_pdf:x on line ...
@@ -5980,6 +5981,7 @@ Defining \__driver_scope_begin: on line ...
Defining \__driver_scope_end: on line ...
Defining \driver_box_use_clip:N on line ...
Defining \driver_box_use_rotate:Nn on line ...
+Defining \__driver_box_use_rotate:Nn on line ...
Defining \driver_box_use_scale:Nnn on line ...
Defining \__driver_image_getbb_eps:n on line ...
Defining \__driver_image_getbb_jpg:n on line ...
@@ -6032,6 +6034,7 @@ Defining \driver_draw_color_stroke_gray:n on line ...
Defining \driver_draw_color_fill_rgb:nnn on line ...
Defining \driver_draw_color_stroke_rgb:nnn on line ...
Defining \__driver_color_fill_select:n on line ...
+Defining \__driver_color_fill_select:x on line ...
Defining \driver_draw_cm:nnnn on line ...
Defining \__driver_draw_cm:nnnn on line ...
Defining \__driver_draw_cm_decompose:nnnnN on line ...
diff --git a/l3kernel/testfiles/m3expl003.tlg b/l3kernel/testfiles/m3expl003.tlg
index 2d113a3..dee9b8e 100644
--- a/l3kernel/testfiles/m3expl003.tlg
+++ b/l3kernel/testfiles/m3expl003.tlg
@@ -6172,10 +6172,14 @@ Defining \driver_color_pickup:N on line ...
Defining \l__driver_color_stack_int on line ...
\l__driver_color_stack_int=\count...
Defining \driver_color_cmyk:nnnn on line ...
+Defining \__driver_color_cmyk:nnnn on line ...
Defining \driver_color_gray:n on line ...
+Defining \__driver_color_gray:n on line ...
Defining \driver_color_rgb:nnn on line ...
+Defining \__driver_color_rgb:nnn on line ...
Defining \driver_color_spot:nn on line ...
Defining \__driver_color_select:n on line ...
+Defining \__driver_color_select:x on line ...
Defining \__driver_color_reset: on line ...
Defining \__driver_literal_pdf:n on line ...
Defining \__driver_literal_pdf:x on line ...
@@ -6185,6 +6189,7 @@ Defining \__driver_matrix:n on line ...
Defining \__driver_matrix:x on line ...
Defining \driver_box_use_clip:N on line ...
Defining \driver_box_use_rotate:Nn on line ...
+Defining \__driver_box_use_rotate:Nn on line ...
Defining \l__driver_cos_fp on line ...
Defining \l__driver_sin_fp on line ...
Defining \driver_box_use_scale:Nnn on line ...
@@ -6234,6 +6239,7 @@ Defining \driver_draw_color_stroke_gray:n on line ...
Defining \driver_draw_color_fill_rgb:nnn on line ...
Defining \driver_draw_color_stroke_rgb:nnn on line ...
Defining \__driver_color_fill_select:n on line ...
+Defining \__driver_color_fill_select:x on line ...
Defining \driver_draw_cm:nnnn on line ...
Defining \driver_draw_box_use:Nnnnn on line ...
)
diff --git a/l3kernel/testfiles/m3expl003.uptex.tlg b/l3kernel/testfiles/m3expl003.uptex.tlg
index 504c1a7..10fcf3e 100644
--- a/l3kernel/testfiles/m3expl003.uptex.tlg
+++ b/l3kernel/testfiles/m3expl003.uptex.tlg
@@ -6172,6 +6172,7 @@ Defining \driver_color_gray:n on line ...
Defining \driver_color_rgb:nnn on line ...
Defining \driver_color_spot:nn on line ...
Defining \__driver_color_select:n on line ...
+Defining \__driver_color_select:x on line ...
Defining \__driver_color_reset: on line ...
Defining \__driver_literal_pdf:n on line ...
Defining \__driver_literal_pdf:x on line ...
@@ -6179,6 +6180,7 @@ Defining \__driver_scope_begin: on line ...
Defining \__driver_scope_end: on line ...
Defining \driver_box_use_clip:N on line ...
Defining \driver_box_use_rotate:Nn on line ...
+Defining \__driver_box_use_rotate:Nn on line ...
Defining \driver_box_use_scale:Nnn on line ...
Defining \__driver_image_getbb_eps:n on line ...
Defining \__driver_image_getbb_jpg:n on line ...
@@ -6231,6 +6233,7 @@ Defining \driver_draw_color_stroke_gray:n on line ...
Defining \driver_draw_color_fill_rgb:nnn on line ...
Defining \driver_draw_color_stroke_rgb:nnn on line ...
Defining \__driver_color_fill_select:n on line ...
+Defining \__driver_color_fill_select:x on line ...
Defining \driver_draw_cm:nnnn on line ...
Defining \__driver_draw_cm:nnnn on line ...
Defining \__driver_draw_cm_decompose:nnnnN on line ...
diff --git a/l3kernel/testfiles/m3expl003.xetex.tlg b/l3kernel/testfiles/m3expl003.xetex.tlg
index 9f29f3f..c3545da 100644
--- a/l3kernel/testfiles/m3expl003.xetex.tlg
+++ b/l3kernel/testfiles/m3expl003.xetex.tlg
@@ -5951,6 +5951,7 @@ Defining \driver_color_gray:n on line ...
Defining \driver_color_rgb:nnn on line ...
Defining \driver_color_spot:nn on line ...
Defining \__driver_color_select:n on line ...
+Defining \__driver_color_select:x on line ...
Defining \__driver_color_reset: on line ...
Defining \__driver_literal_pdf:n on line ...
Defining \__driver_literal_pdf:x on line ...
@@ -5958,6 +5959,7 @@ Defining \__driver_scope_begin: on line ...
Defining \__driver_scope_end: on line ...
Defining \driver_box_use_clip:N on line ...
Defining \driver_box_use_rotate:Nn on line ...
+Defining \__driver_box_use_rotate:Nn on line ...
Defining \driver_box_use_scale:Nnn on line ...
Defining \__driver_image_getbb_eps:n on line ...
Defining \g__driver_image_int on line ...
@@ -6019,6 +6021,7 @@ Defining \driver_draw_color_stroke_gray:n on line ...
Defining \driver_draw_color_fill_rgb:nnn on line ...
Defining \driver_draw_color_stroke_rgb:nnn on line ...
Defining \__driver_color_fill_select:n on line ...
+Defining \__driver_color_fill_select:x on line ...
Defining \driver_draw_cm:nnnn on line ...
Defining \__driver_draw_cm:nnnn on line ...
Defining \__driver_draw_cm_decompose:nnnnN on line ...
More information about the latex3-commits
mailing list