diff options
author | Karl Berry <karl@freefriends.org> | 2016-05-18 21:59:39 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2016-05-18 21:59:39 +0000 |
commit | 97ec70e7454d8877757fc67cfb6409943171d219 (patch) | |
tree | be7cca80672f2e585ba3e612f3bf7fb7647a7968 /Master/texmf-dist/tex/latex/l3kernel | |
parent | 05a3ef202ad67cea59168d591f76ec3219e56aae (diff) |
l3 (18may16)
git-svn-id: svn://tug.org/texlive/trunk@41246 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/l3kernel')
-rw-r--r-- | Master/texmf-dist/tex/latex/l3kernel/expl3-code.tex | 8 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/l3kernel/expl3-generic.tex | 4 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/l3kernel/expl3.sty | 4 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/l3kernel/l3dvipdfmx.def | 152 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/l3kernel/l3dvips.def | 5 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/l3kernel/l3dvisvgm.def | 5 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/l3kernel/l3pdfmode.def | 146 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/l3kernel/l3xdvipdfmx.def | 155 |
8 files changed, 454 insertions, 25 deletions
diff --git a/Master/texmf-dist/tex/latex/l3kernel/expl3-code.tex b/Master/texmf-dist/tex/latex/l3kernel/expl3-code.tex index 2d36561733f..2676787a1c3 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/expl3-code.tex +++ b/Master/texmf-dist/tex/latex/l3kernel/expl3-code.tex @@ -82,8 +82,8 @@ %% ----------------------------------------------------------------------- \def\ExplFileName{expl3}% \def\ExplFileDescription{L3 programming layer}% -\def\ExplFileDate{2016/05/14}% -\def\ExplFileVersion{6495}% +\def\ExplFileDate{2016/05/18}% +\def\ExplFileVersion{6512}% \begingroup \def\next{\endgroup}% \expandafter\ifx\csname PackageError\endcsname\relax @@ -16295,7 +16295,7 @@ %% %% ----------------------------------------------------------------------- %% -\GetIdInfo$Id: l3coffins.dtx 6440 2016-03-24 09:59:29Z joseph $ +\GetIdInfo$Id: l3coffins.dtx 6508 2016-05-17 17:00:42Z joseph $ {L3 Coffin code layer} \box_new:N \l__coffin_internal_box \dim_new:N \l__coffin_internal_dim @@ -16446,7 +16446,7 @@ \dim_set:Nn \tex_hsize:D {#2} \dim_set_eq:NN \linewidth \tex_hsize:D \dim_set_eq:NN \columnwidth \tex_hsize:D - \color_group_begin: \color_ensure_current: + \color_group_begin: \cs_set_protected:Npn \vcoffin_set_end: { \color_group_end: diff --git a/Master/texmf-dist/tex/latex/l3kernel/expl3-generic.tex b/Master/texmf-dist/tex/latex/l3kernel/expl3-generic.tex index 615774d6de2..42126c988c8 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/expl3-generic.tex +++ b/Master/texmf-dist/tex/latex/l3kernel/expl3-generic.tex @@ -47,8 +47,8 @@ %% ----------------------------------------------------------------------- \def\ExplFileName{expl3}% \def\ExplFileDescription{L3 programming layer}% -\def\ExplFileDate{2016/05/14}% -\def\ExplFileVersion{6495}% +\def\ExplFileDate{2016/05/18}% +\def\ExplFileVersion{6512}% \let\ExplLoaderFileVersion\ExplFileVersion \begingroup \def\tempa{LaTeX2e}% diff --git a/Master/texmf-dist/tex/latex/l3kernel/expl3.sty b/Master/texmf-dist/tex/latex/l3kernel/expl3.sty index 6d06ca11f3d..97c34cfc936 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/expl3.sty +++ b/Master/texmf-dist/tex/latex/l3kernel/expl3.sty @@ -47,8 +47,8 @@ %% ----------------------------------------------------------------------- \def\ExplFileName{expl3}% \def\ExplFileDescription{L3 programming layer}% -\def\ExplFileDate{2016/05/14}% -\def\ExplFileVersion{6495}% +\def\ExplFileDate{2016/05/18}% +\def\ExplFileVersion{6512}% \let\ExplLoaderFileVersion\ExplFileVersion \ProvidesPackage{\ExplFileName} [% diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3dvipdfmx.def b/Master/texmf-dist/tex/latex/l3kernel/l3dvipdfmx.def index 59dc81cc5ce..f2447ac4f51 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/l3dvipdfmx.def +++ b/Master/texmf-dist/tex/latex/l3kernel/l3dvipdfmx.def @@ -46,7 +46,7 @@ %% %% ----------------------------------------------------------------------- %% -\GetIdInfo$Id: l3drivers.dtx 6494 2016-05-14 21:10:56Z joseph $ +\GetIdInfo$Id: l3drivers.dtx 6511 2016-05-17 20:20:23Z joseph $ {L3 Experimental drivers} \ProvidesExplFile {l3dvidpfmx.def}{\ExplFileDate}{\ExplFileVersion} @@ -67,12 +67,12 @@ { \tl_set:Nn \l__driver_current_color_tl { \current@color } } { } } -\cs_new_protected_nopar:Npx \__driver_color_ensure_current: +\cs_new_protected_nopar:Npn \__driver_color_ensure_current: { \tex_special:D { pdf:bcolor~\l__driver_current_color_tl } - \group_insert_after:N \exp_not:N \__driver_color_reset: + \group_insert_after:N \__driver_color_reset: } -\cs_new_protected_nopar:Npx \__driver_color_reset: +\cs_new_protected_nopar:Npn \__driver_color_reset: { \tex_special:D { pdf:ecolor } } \cs_new_protected:Npn \__driver_box_use_clip:N #1 { @@ -127,6 +127,150 @@ \hbox_overlap_right:n { \box_use:N #1 } \__driver_scope_end: } +\cs_new_eq:NN \__driver_draw_literal:n \__driver_literal:n +\cs_generate_variant:Nn \__driver_draw_literal:n { x } +\cs_new_protected_nopar:Npn \__driver_draw_begin: + { \__driver_draw_scope_begin: } +\cs_new_protected_nopar:Npn \__driver_draw_end: + { \__driver_draw_scope_end: } +\cs_new_protected_nopar:Npn \__driver_draw_scope_begin: + { \__driver_draw_literal:n { q } } +\cs_new_protected_nopar:Npn \__driver_draw_scope_end: + { \__driver_draw_literal:n { Q } } +\cs_new_protected:Npn \__driver_draw_moveto:nn #1#2 + { + \__driver_draw_literal:x + { \dim_to_decimal_in_bp:n {#1} ~ \dim_to_decimal_in_bp:n {#2} ~ m } + } +\cs_new_protected:Npn \__driver_draw_lineto:nn #1#2 + { + \__driver_draw_literal:x + { \dim_to_decimal_in_bp:n {#1} ~ \dim_to_decimal_in_bp:n {#2} ~ l } + } +\cs_new_protected:Npn \__driver_draw_curveto:nnnnnn #1#2#3#4#5#6 + { + \__driver_draw_literal:x + { + \dim_to_decimal_in_bp:n {#1} ~ \dim_to_decimal_in_bp:n {#2} ~ + \dim_to_decimal_in_bp:n {#3} ~ \dim_to_decimal_in_bp:n {#4} ~ + \dim_to_decimal_in_bp:n {#5} ~ \dim_to_decimal_in_bp:n {#6} ~ + c + } + } +\bool_new:N \__driver_draw_eor_bool +\cs_new_protected_nopar:Npn \__driver_draw_closepath: + { \__driver_draw_literal:n { h } } +\cs_new_protected_nopar:Npn \__driver_draw_stroke: + { \__driver_draw_literal:n { S } } +\cs_new_protected_nopar:Npn \__driver_draw_closestroke: + { \__driver_draw_literal:n { s } } +\cs_new_protected_nopar:Npn \__driver_draw_fill: + { + \__driver_draw_literal:x + { f \bool_if:NT \__driver_draw_eor_bool * } + } +\cs_new_protected_nopar:Npn \__driver_draw_fillstroke: + { + \__driver_draw_literal:x + { B \bool_if:NT \__driver_draw_eor_bool * } + } +\cs_new_protected_nopar:Npn \__driver_draw_clip: + { + \__driver_draw_literal:x + { W \bool_if:NT \__driver_draw_eor_bool * } + } +\cs_new_protected_nopar:Npn \__driver_draw_discardpath: + { \__driver_draw_literal:n { n } } +\cs_new_protected:Npn \__driver_draw_dash:nn #1#2 + { + \__driver_draw_literal:x + { + [ ~ + \clist_map_function:nN {#1} \__driver_draw_dash:n + ] ~ + \dim_to_decimal_in_bp:n {#2} ~ d + } + } +\cs_new:Npn \__driver_draw_dash:n #1 + { \dim_to_decimal_in_bp:n {#1} ~ } +\cs_new_protected:Npn \__driver_draw_linewidth:n #1 + { + \__driver_draw_literal:x + { \dim_to_decimal_in_bp:n {#1} ~ w } + } +\cs_new_protected:Npn \__driver_draw_miterlimit:n #1 + { \__driver_draw_literal:x { \fp_eval:n {#1} ~ M } } +\cs_new_protected_nopar:Npn \__driver_draw_cap_butt: + { \__driver_draw_literal:n { 0 ~ J } } +\cs_new_protected_nopar:Npn \__driver_draw_cap_round: + { \__driver_draw_literal:n { 1 ~ J } } +\cs_new_protected_nopar:Npn \__driver_draw_cap_rectangle: + { \__driver_draw_literal:n { 2 ~ J } } +\cs_new_protected_nopar:Npn \__driver_draw_join_miter: + { \__driver_draw_literal:n { 0 ~ j } } +\cs_new_protected_nopar:Npn \__driver_draw_join_round: + { \__driver_draw_literal:n { 1 ~ j } } +\cs_new_protected_nopar:Npn \__driver_draw_join_bevel: + { \__driver_draw_literal:n { 2 ~ j } } +\cs_new_protected:Npn \__driver_draw_color_cmyk_fill:nnnn #1#2#3#4 + { + \__driver_draw_literal: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_cmyk_stroke:nnnn #1#2#3#4 + { + \__driver_draw_literal: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_gray_fill:n #1 + { \__driver_draw_literal:x { \fp_eval:n {#1} ~ g } } +\cs_new_protected:Npn \__driver_draw_color_gray_stroke:n #1 + { \__driver_draw_literal:x { \fp_eval:n {#1} ~ G } } +\cs_new_protected:Npn \__driver_draw_color_rgb_fill:nnn #1#2#3 + { + \__driver_draw_literal:x + { \fp_eval:n {#1} ~ \fp_eval:n {#2} ~ \fp_eval:n {#3} ~ rg } + } +\cs_new_protected:Npn \__driver_draw_color_rgb_stroke:nnn #1#2#3 + { + \__driver_draw_literal:x + { \fp_eval:n {#1} ~ \fp_eval:n {#2} ~ \fp_eval:n {#3} ~ RG } + } +\cs_new_protected:Npn \__driver_draw_transformcm:nnnnnn #1#2#3#4#5#6 + { + \__driver_draw_literal:x + { + \fp_eval:n {#1} ~ \fp_eval:n {#2} ~ + \fp_eval:n {#3} ~ \fp_eval:n {#4} ~ + \dim_to_decimal_in_bp:n {#5} ~ \dim_to_decimal_in_bp:n {#6} ~ + cm + } + } +\cs_new_protected:Npn \__driver_draw_hbox:Nnnnnnn #1#2#3#4#5#6#7 + { + \hbox_set:Nn \l__driver_tmp_box + { + \tex_kern:D \__dim_eval:w #6 \__dim_eval_end: + \__driver_scope_begin: + \__driver_draw_transformcm:nnnnnn {#2} {#3} {#4} {#5} + { 0pt } { 0pt } + \box_move_up:nn {#7} { \box_use:N #1 } + \__driver_scope_end: + } + \box_set_wd:Nn \l__driver_tmp_box { 0pt } + \box_set_ht:Nn \l__driver_tmp_box { 0pt } + \box_set_dp:Nn \l__driver_tmp_box { 0pt } + \box_use:N \l__driver_tmp_box + } +\box_new:N \l__driver_tmp_box %% %% %% End of file `l3dvipdfmx.def'. diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3dvips.def b/Master/texmf-dist/tex/latex/l3kernel/l3dvips.def index 30c8a6dc4f3..ffd9060b2cc 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/l3dvips.def +++ b/Master/texmf-dist/tex/latex/l3kernel/l3dvips.def @@ -46,12 +46,12 @@ %% %% ----------------------------------------------------------------------- %% -\GetIdInfo$Id: l3drivers.dtx 6494 2016-05-14 21:10:56Z joseph $ +\GetIdInfo$Id: l3drivers.dtx 6511 2016-05-17 20:20:23Z joseph $ {L3 Experimental drivers} \ProvidesExplFile {l3dvips.def}{\ExplFileDate}{\ExplFileVersion} {L3 Experimental driver: dvips} -\cs_new_protected:Npx \__driver_literal:n #1 +\cs_new_protected:Npn \__driver_literal:n #1 { \tex_special:D { @@ -130,7 +130,6 @@ \tex_special:D { color~push~\l__driver_current_color_tl } \group_insert_after:N \__driver_color_reset: } - \cs_new_protected_nopar:Npn \__driver_color_reset: { \tex_special:D { color~pop } } %% diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3dvisvgm.def b/Master/texmf-dist/tex/latex/l3kernel/l3dvisvgm.def index 5b04f5d7297..c873e1df65b 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/l3dvisvgm.def +++ b/Master/texmf-dist/tex/latex/l3kernel/l3dvisvgm.def @@ -46,7 +46,7 @@ %% %% ----------------------------------------------------------------------- %% -\GetIdInfo$Id: l3drivers.dtx 6494 2016-05-14 21:10:56Z joseph $ +\GetIdInfo$Id: l3drivers.dtx 6511 2016-05-17 20:20:23Z joseph $ {L3 Experimental drivers} \ProvidesExplFile {l3dvisvgm.def}{\ExplFileDate}{\ExplFileVersion} @@ -153,9 +153,8 @@ \cs_new_protected_nopar:Npn \__driver_color_ensure_current: { \tex_special:D { color~push~\l__driver_current_color_tl } - \group_insert_after:N \exp_not:N \__driver_color_reset: + \group_insert_after:N \__driver_color_reset: } - \cs_new_protected_nopar:Npn \__driver_color_reset: { \tex_special:D { color~pop } } %% diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3pdfmode.def b/Master/texmf-dist/tex/latex/l3kernel/l3pdfmode.def index 05f466d3051..d90c9c2bdc5 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/l3pdfmode.def +++ b/Master/texmf-dist/tex/latex/l3kernel/l3pdfmode.def @@ -46,7 +46,7 @@ %% %% ----------------------------------------------------------------------- %% -\GetIdInfo$Id: l3drivers.dtx 6494 2016-05-14 21:10:56Z joseph $ +\GetIdInfo$Id: l3drivers.dtx 6511 2016-05-17 20:20:23Z joseph $ {L3 Experimental drivers} \ProvidesExplFile {l3pdfmode.def}{\ExplFileDate}{\ExplFileVersion} @@ -155,6 +155,150 @@ \hbox_overlap_right:n { \box_use:N #1 } \__driver_scope_end: } +\cs_new_eq:NN \__driver_draw_literal:n \__driver_literal:n +\cs_generate_variant:Nn \__driver_draw_literal:n { x } +\cs_new_protected_nopar:Npn \__driver_draw_begin: + { \__driver_draw_scope_begin: } +\cs_new_protected_nopar:Npn \__driver_draw_end: + { \__driver_draw_scope_end: } +\cs_new_protected_nopar:Npn \__driver_draw_scope_begin: + { \__driver_draw_literal:n { q } } +\cs_new_protected_nopar:Npn \__driver_draw_scope_end: + { \__driver_draw_literal:n { Q } } +\cs_new_protected:Npn \__driver_draw_moveto:nn #1#2 + { + \__driver_draw_literal:x + { \dim_to_decimal_in_bp:n {#1} ~ \dim_to_decimal_in_bp:n {#2} ~ m } + } +\cs_new_protected:Npn \__driver_draw_lineto:nn #1#2 + { + \__driver_draw_literal:x + { \dim_to_decimal_in_bp:n {#1} ~ \dim_to_decimal_in_bp:n {#2} ~ l } + } +\cs_new_protected:Npn \__driver_draw_curveto:nnnnnn #1#2#3#4#5#6 + { + \__driver_draw_literal:x + { + \dim_to_decimal_in_bp:n {#1} ~ \dim_to_decimal_in_bp:n {#2} ~ + \dim_to_decimal_in_bp:n {#3} ~ \dim_to_decimal_in_bp:n {#4} ~ + \dim_to_decimal_in_bp:n {#5} ~ \dim_to_decimal_in_bp:n {#6} ~ + c + } + } +\bool_new:N \__driver_draw_eor_bool +\cs_new_protected_nopar:Npn \__driver_draw_closepath: + { \__driver_draw_literal:n { h } } +\cs_new_protected_nopar:Npn \__driver_draw_stroke: + { \__driver_draw_literal:n { S } } +\cs_new_protected_nopar:Npn \__driver_draw_closestroke: + { \__driver_draw_literal:n { s } } +\cs_new_protected_nopar:Npn \__driver_draw_fill: + { + \__driver_draw_literal:x + { f \bool_if:NT \__driver_draw_eor_bool * } + } +\cs_new_protected_nopar:Npn \__driver_draw_fillstroke: + { + \__driver_draw_literal:x + { B \bool_if:NT \__driver_draw_eor_bool * } + } +\cs_new_protected_nopar:Npn \__driver_draw_clip: + { + \__driver_draw_literal:x + { W \bool_if:NT \__driver_draw_eor_bool * } + } +\cs_new_protected_nopar:Npn \__driver_draw_discardpath: + { \__driver_draw_literal:n { n } } +\cs_new_protected:Npn \__driver_draw_dash:nn #1#2 + { + \__driver_draw_literal:x + { + [ ~ + \clist_map_function:nN {#1} \__driver_draw_dash:n + ] ~ + \dim_to_decimal_in_bp:n {#2} ~ d + } + } +\cs_new:Npn \__driver_draw_dash:n #1 + { \dim_to_decimal_in_bp:n {#1} ~ } +\cs_new_protected:Npn \__driver_draw_linewidth:n #1 + { + \__driver_draw_literal:x + { \dim_to_decimal_in_bp:n {#1} ~ w } + } +\cs_new_protected:Npn \__driver_draw_miterlimit:n #1 + { \__driver_draw_literal:x { \fp_eval:n {#1} ~ M } } +\cs_new_protected_nopar:Npn \__driver_draw_cap_butt: + { \__driver_draw_literal:n { 0 ~ J } } +\cs_new_protected_nopar:Npn \__driver_draw_cap_round: + { \__driver_draw_literal:n { 1 ~ J } } +\cs_new_protected_nopar:Npn \__driver_draw_cap_rectangle: + { \__driver_draw_literal:n { 2 ~ J } } +\cs_new_protected_nopar:Npn \__driver_draw_join_miter: + { \__driver_draw_literal:n { 0 ~ j } } +\cs_new_protected_nopar:Npn \__driver_draw_join_round: + { \__driver_draw_literal:n { 1 ~ j } } +\cs_new_protected_nopar:Npn \__driver_draw_join_bevel: + { \__driver_draw_literal:n { 2 ~ j } } +\cs_new_protected:Npn \__driver_draw_color_cmyk_fill:nnnn #1#2#3#4 + { + \__driver_draw_literal: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_cmyk_stroke:nnnn #1#2#3#4 + { + \__driver_draw_literal: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_gray_fill:n #1 + { \__driver_draw_literal:x { \fp_eval:n {#1} ~ g } } +\cs_new_protected:Npn \__driver_draw_color_gray_stroke:n #1 + { \__driver_draw_literal:x { \fp_eval:n {#1} ~ G } } +\cs_new_protected:Npn \__driver_draw_color_rgb_fill:nnn #1#2#3 + { + \__driver_draw_literal:x + { \fp_eval:n {#1} ~ \fp_eval:n {#2} ~ \fp_eval:n {#3} ~ rg } + } +\cs_new_protected:Npn \__driver_draw_color_rgb_stroke:nnn #1#2#3 + { + \__driver_draw_literal:x + { \fp_eval:n {#1} ~ \fp_eval:n {#2} ~ \fp_eval:n {#3} ~ RG } + } +\cs_new_protected:Npn \__driver_draw_transformcm:nnnnnn #1#2#3#4#5#6 + { + \__driver_draw_literal:x + { + \fp_eval:n {#1} ~ \fp_eval:n {#2} ~ + \fp_eval:n {#3} ~ \fp_eval:n {#4} ~ + \dim_to_decimal_in_bp:n {#5} ~ \dim_to_decimal_in_bp:n {#6} ~ + cm + } + } +\cs_new_protected:Npn \__driver_draw_hbox:Nnnnnnn #1#2#3#4#5#6#7 + { + \hbox_set:Nn \l__driver_tmp_box + { + \tex_kern:D \__dim_eval:w #6 \__dim_eval_end: + \__driver_scope_begin: + \__driver_draw_transformcm:nnnnnn {#2} {#3} {#4} {#5} + { 0pt } { 0pt } + \box_move_up:nn {#7} { \box_use:N #1 } + \__driver_scope_end: + } + \box_set_wd:Nn \l__driver_tmp_box { 0pt } + \box_set_ht:Nn \l__driver_tmp_box { 0pt } + \box_set_dp:Nn \l__driver_tmp_box { 0pt } + \box_use:N \l__driver_tmp_box + } +\box_new:N \l__driver_tmp_box %% %% %% End of file `l3pdfmode.def'. diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3xdvipdfmx.def b/Master/texmf-dist/tex/latex/l3kernel/l3xdvipdfmx.def index 6778d6255a4..f21566f34b6 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/l3xdvipdfmx.def +++ b/Master/texmf-dist/tex/latex/l3kernel/l3xdvipdfmx.def @@ -46,7 +46,7 @@ %% %% ----------------------------------------------------------------------- %% -\GetIdInfo$Id: l3drivers.dtx 6494 2016-05-14 21:10:56Z joseph $ +\GetIdInfo$Id: l3drivers.dtx 6511 2016-05-17 20:20:23Z joseph $ {L3 Experimental drivers} \ProvidesExplFile {l3xdvidpfmx.def}{\ExplFileDate}{\ExplFileVersion} @@ -67,12 +67,12 @@ { \tl_set:Nn \l__driver_current_color_tl { \current@color } } { } } -\cs_new_protected_nopar:Npx \__driver_color_ensure_current: +\cs_new_protected_nopar:Npn \__driver_color_ensure_current: { \tex_special:D { pdf:bcolor~\l__driver_current_color_tl } - \group_insert_after:N \exp_not:N \__driver_color_reset: + \group_insert_after:N \__driver_color_reset: } -\cs_new_protected_nopar:Npx \__driver_color_reset: +\cs_new_protected_nopar:Npn \__driver_color_reset: { \tex_special:D { pdf:ecolor } } \AtBeginDocument { @@ -81,9 +81,8 @@ \cs_set_protected_nopar:Npn \__driver_color_ensure_current: { \tex_special:D { color~push~\l__driver_current_color_tl } - \group_insert_after:N \exp_not:N \__driver_color_reset: + \group_insert_after:N \__driver_color_reset: } - \cs_set_protected_nopar:Npn \__driver_color_reset: { \tex_special:D { color~pop } } } @@ -142,6 +141,150 @@ \hbox_overlap_right:n { \box_use:N #1 } \__driver_scope_end: } +\cs_new_eq:NN \__driver_draw_literal:n \__driver_literal:n +\cs_generate_variant:Nn \__driver_draw_literal:n { x } +\cs_new_protected_nopar:Npn \__driver_draw_begin: + { \__driver_draw_scope_begin: } +\cs_new_protected_nopar:Npn \__driver_draw_end: + { \__driver_draw_scope_end: } +\cs_new_protected_nopar:Npn \__driver_draw_scope_begin: + { \__driver_draw_literal:n { q } } +\cs_new_protected_nopar:Npn \__driver_draw_scope_end: + { \__driver_draw_literal:n { Q } } +\cs_new_protected:Npn \__driver_draw_moveto:nn #1#2 + { + \__driver_draw_literal:x + { \dim_to_decimal_in_bp:n {#1} ~ \dim_to_decimal_in_bp:n {#2} ~ m } + } +\cs_new_protected:Npn \__driver_draw_lineto:nn #1#2 + { + \__driver_draw_literal:x + { \dim_to_decimal_in_bp:n {#1} ~ \dim_to_decimal_in_bp:n {#2} ~ l } + } +\cs_new_protected:Npn \__driver_draw_curveto:nnnnnn #1#2#3#4#5#6 + { + \__driver_draw_literal:x + { + \dim_to_decimal_in_bp:n {#1} ~ \dim_to_decimal_in_bp:n {#2} ~ + \dim_to_decimal_in_bp:n {#3} ~ \dim_to_decimal_in_bp:n {#4} ~ + \dim_to_decimal_in_bp:n {#5} ~ \dim_to_decimal_in_bp:n {#6} ~ + c + } + } +\bool_new:N \__driver_draw_eor_bool +\cs_new_protected_nopar:Npn \__driver_draw_closepath: + { \__driver_draw_literal:n { h } } +\cs_new_protected_nopar:Npn \__driver_draw_stroke: + { \__driver_draw_literal:n { S } } +\cs_new_protected_nopar:Npn \__driver_draw_closestroke: + { \__driver_draw_literal:n { s } } +\cs_new_protected_nopar:Npn \__driver_draw_fill: + { + \__driver_draw_literal:x + { f \bool_if:NT \__driver_draw_eor_bool * } + } +\cs_new_protected_nopar:Npn \__driver_draw_fillstroke: + { + \__driver_draw_literal:x + { B \bool_if:NT \__driver_draw_eor_bool * } + } +\cs_new_protected_nopar:Npn \__driver_draw_clip: + { + \__driver_draw_literal:x + { W \bool_if:NT \__driver_draw_eor_bool * } + } +\cs_new_protected_nopar:Npn \__driver_draw_discardpath: + { \__driver_draw_literal:n { n } } +\cs_new_protected:Npn \__driver_draw_dash:nn #1#2 + { + \__driver_draw_literal:x + { + [ ~ + \clist_map_function:nN {#1} \__driver_draw_dash:n + ] ~ + \dim_to_decimal_in_bp:n {#2} ~ d + } + } +\cs_new:Npn \__driver_draw_dash:n #1 + { \dim_to_decimal_in_bp:n {#1} ~ } +\cs_new_protected:Npn \__driver_draw_linewidth:n #1 + { + \__driver_draw_literal:x + { \dim_to_decimal_in_bp:n {#1} ~ w } + } +\cs_new_protected:Npn \__driver_draw_miterlimit:n #1 + { \__driver_draw_literal:x { \fp_eval:n {#1} ~ M } } +\cs_new_protected_nopar:Npn \__driver_draw_cap_butt: + { \__driver_draw_literal:n { 0 ~ J } } +\cs_new_protected_nopar:Npn \__driver_draw_cap_round: + { \__driver_draw_literal:n { 1 ~ J } } +\cs_new_protected_nopar:Npn \__driver_draw_cap_rectangle: + { \__driver_draw_literal:n { 2 ~ J } } +\cs_new_protected_nopar:Npn \__driver_draw_join_miter: + { \__driver_draw_literal:n { 0 ~ j } } +\cs_new_protected_nopar:Npn \__driver_draw_join_round: + { \__driver_draw_literal:n { 1 ~ j } } +\cs_new_protected_nopar:Npn \__driver_draw_join_bevel: + { \__driver_draw_literal:n { 2 ~ j } } +\cs_new_protected:Npn \__driver_draw_color_cmyk_fill:nnnn #1#2#3#4 + { + \__driver_draw_literal: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_cmyk_stroke:nnnn #1#2#3#4 + { + \__driver_draw_literal: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_gray_fill:n #1 + { \__driver_draw_literal:x { \fp_eval:n {#1} ~ g } } +\cs_new_protected:Npn \__driver_draw_color_gray_stroke:n #1 + { \__driver_draw_literal:x { \fp_eval:n {#1} ~ G } } +\cs_new_protected:Npn \__driver_draw_color_rgb_fill:nnn #1#2#3 + { + \__driver_draw_literal:x + { \fp_eval:n {#1} ~ \fp_eval:n {#2} ~ \fp_eval:n {#3} ~ rg } + } +\cs_new_protected:Npn \__driver_draw_color_rgb_stroke:nnn #1#2#3 + { + \__driver_draw_literal:x + { \fp_eval:n {#1} ~ \fp_eval:n {#2} ~ \fp_eval:n {#3} ~ RG } + } +\cs_new_protected:Npn \__driver_draw_transformcm:nnnnnn #1#2#3#4#5#6 + { + \__driver_draw_literal:x + { + \fp_eval:n {#1} ~ \fp_eval:n {#2} ~ + \fp_eval:n {#3} ~ \fp_eval:n {#4} ~ + \dim_to_decimal_in_bp:n {#5} ~ \dim_to_decimal_in_bp:n {#6} ~ + cm + } + } +\cs_new_protected:Npn \__driver_draw_hbox:Nnnnnnn #1#2#3#4#5#6#7 + { + \hbox_set:Nn \l__driver_tmp_box + { + \tex_kern:D \__dim_eval:w #6 \__dim_eval_end: + \__driver_scope_begin: + \__driver_draw_transformcm:nnnnnn {#2} {#3} {#4} {#5} + { 0pt } { 0pt } + \box_move_up:nn {#7} { \box_use:N #1 } + \__driver_scope_end: + } + \box_set_wd:Nn \l__driver_tmp_box { 0pt } + \box_set_ht:Nn \l__driver_tmp_box { 0pt } + \box_set_dp:Nn \l__driver_tmp_box { 0pt } + \box_use:N \l__driver_tmp_box + } +\box_new:N \l__driver_tmp_box %% %% %% End of file `l3xdvipdfmx.def'. |