diff options
author | Norbert Preining <norbert@preining.info> | 2021-10-18 03:01:28 +0000 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2021-10-18 03:01:28 +0000 |
commit | ad3ad18aa939862832c90a74bcf41e8a5570ff65 (patch) | |
tree | 377bed46b478634d32730a255c1a93050ee17e87 /macros/latex/contrib/l3backend | |
parent | 54592d609e44d5cff9e5d940befbcb3330d92b10 (diff) |
CTAN sync 202110180301
Diffstat (limited to 'macros/latex/contrib/l3backend')
-rw-r--r-- | macros/latex/contrib/l3backend/CHANGELOG.md | 8 | ||||
-rw-r--r-- | macros/latex/contrib/l3backend/README.md | 2 | ||||
-rw-r--r-- | macros/latex/contrib/l3backend/l3backend-basics.dtx | 14 | ||||
-rw-r--r-- | macros/latex/contrib/l3backend/l3backend-box.dtx | 2 | ||||
-rw-r--r-- | macros/latex/contrib/l3backend/l3backend-code.pdf | bin | 887895 -> 891719 bytes | |||
-rw-r--r-- | macros/latex/contrib/l3backend/l3backend-color.dtx | 86 | ||||
-rw-r--r-- | macros/latex/contrib/l3backend/l3backend-draw.dtx | 2 | ||||
-rw-r--r-- | macros/latex/contrib/l3backend/l3backend-graphics.dtx | 2 | ||||
-rw-r--r-- | macros/latex/contrib/l3backend/l3backend-header.dtx | 2 | ||||
-rw-r--r-- | macros/latex/contrib/l3backend/l3backend-opacity.dtx | 2 | ||||
-rw-r--r-- | macros/latex/contrib/l3backend/l3backend-pdf.dtx | 2 |
11 files changed, 92 insertions, 30 deletions
diff --git a/macros/latex/contrib/l3backend/CHANGELOG.md b/macros/latex/contrib/l3backend/CHANGELOG.md index f98528e318..9555227269 100644 --- a/macros/latex/contrib/l3backend/CHANGELOG.md +++ b/macros/latex/contrib/l3backend/CHANGELOG.md @@ -6,6 +6,11 @@ this project uses date-based 'snapshot' version identifiers. ## [Unreleased] +## [2021-10-17] + +### Changed +- Better DeviceN support + ## [2021-10-12] ### Fixed @@ -196,7 +201,8 @@ this project uses date-based 'snapshot' version identifiers. - Include `l3backend` in file names - Moved backend code to internal for each 'parent' module -[Unreleased]: https://github.com/latex3/latex3/compare/2021-10-12...HEAD +[Unreleased]: https://github.com/latex3/latex3/compare/2021-10-17...HEAD +[2021-10-17]: https://github.com/latex3/latex3/compare/2021-10-12...2021-10-17 [2021-10-12]: https://github.com/latex3/latex3/compare/2021-08-04...2021-10-12 [2021-08-04]: https://github.com/latex3/latex3/compare/2021-07-12...2021-08-04 [2021-07-12]: https://github.com/latex3/latex3/compare/2021-05-07...2021-07-12 diff --git a/macros/latex/contrib/l3backend/README.md b/macros/latex/contrib/l3backend/README.md index 5349167013..5178df716c 100644 --- a/macros/latex/contrib/l3backend/README.md +++ b/macros/latex/contrib/l3backend/README.md @@ -1,7 +1,7 @@ LaTeX3 Backend Drivers ====================== -Release 2021-10-12 +Release 2021-10-17 This package forms parts of `expl3`, and contains the code used to interface with backends (drivers) across the `expl3` codebase. The functions here are diff --git a/macros/latex/contrib/l3backend/l3backend-basics.dtx b/macros/latex/contrib/l3backend/l3backend-basics.dtx index aa2176c91f..a4de8bf46b 100644 --- a/macros/latex/contrib/l3backend/l3backend-basics.dtx +++ b/macros/latex/contrib/l3backend/l3backend-basics.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2021-10-12} +% \date{Released 2021-10-17} % % \maketitle % @@ -70,27 +70,27 @@ % \begin{macrocode} \ProvidesExplFile %<*dvipdfmx> - {l3backend-dvipdfmx.def}{2021-10-12}{} + {l3backend-dvipdfmx.def}{2021-10-17}{} {L3 backend support: dvipdfmx} %</dvipdfmx> %<*dvips> - {l3backend-dvips.def}{2021-10-12}{} + {l3backend-dvips.def}{2021-10-17}{} {L3 backend support: dvips} %</dvips> %<*dvisvgm> - {l3backend-dvisvgm.def}{2021-10-12}{} + {l3backend-dvisvgm.def}{2021-10-17}{} {L3 backend support: dvisvgm} %</dvisvgm> %<*luatex> - {l3backend-luatex.def}{2021-10-12}{} + {l3backend-luatex.def}{2021-10-17}{} {L3 backend support: PDF output (LuaTeX)} %</luatex> %<*pdftex> - {l3backend-pdftex.def}{2021-10-12}{} + {l3backend-pdftex.def}{2021-10-17}{} {L3 backend support: PDF output (pdfTeX)} %</pdftex> %<*xetex> - {l3backend-xetex.def}{2021-10-12}{} + {l3backend-xetex.def}{2021-10-17}{} {L3 backend support: XeTeX} %</xetex> % \end{macrocode} diff --git a/macros/latex/contrib/l3backend/l3backend-box.dtx b/macros/latex/contrib/l3backend/l3backend-box.dtx index c8f32e8262..179f5bb3f6 100644 --- a/macros/latex/contrib/l3backend/l3backend-box.dtx +++ b/macros/latex/contrib/l3backend/l3backend-box.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2021-10-12} +% \date{Released 2021-10-17} % % \maketitle % diff --git a/macros/latex/contrib/l3backend/l3backend-code.pdf b/macros/latex/contrib/l3backend/l3backend-code.pdf Binary files differindex e593fc032e..9a6aca4f09 100644 --- a/macros/latex/contrib/l3backend/l3backend-code.pdf +++ b/macros/latex/contrib/l3backend/l3backend-code.pdf diff --git a/macros/latex/contrib/l3backend/l3backend-color.dtx b/macros/latex/contrib/l3backend/l3backend-color.dtx index 72254382f5..3bd3fbc429 100644 --- a/macros/latex/contrib/l3backend/l3backend-color.dtx +++ b/macros/latex/contrib/l3backend/l3backend-color.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2021-10-12} +% \date{Released 2021-10-17} % % \maketitle % @@ -486,6 +486,55 @@ % backend. % % \begin{macrocode} +%<*dvipdfmx|luatex|pdftex|xetex|dvips> +% \end{macrocode} +% +% But we start with some functionality needed for both PostScript and +% PDF based backends. +% +% \begin{variable}{\g_@@_backend_colorant_prop} +% \begin{macrocode} +\prop_new:N \g_@@_backend_colorant_prop +% \end{macrocode} +% \end{variable} +% +% \begin{macro}[EXP]{\@@_backend_devicen_colorants:n} +% \begin{macro}[EXP]{\@@_backend_devicen_colorants:w} +% \begin{macrocode} +\cs_new:Npx \@@_backend_devicen_colorants:n #1 + { + \exp_not:N \tl_if_blank:nF {#1} + { + \c_space_tl + << ~ + /Colorants ~ + << ~ + \exp_not:N \@@_backend_devicen_colorants:w #1 ~ + \exp_not:N \q_recursion_tail \c_space_tl + \exp_not:N \q_recursion_stop + >> ~ + >> + } + } +\cs_new:Npn \@@_backend_devicen_colorants:w #1 ~ + { + \quark_if_recursion_tail_stop:n {#1} + \prop_if_in:NnT \g_@@_backend_colorant_prop {#1} + { + #1 ~ + \prop_item:Nn \g_@@_backend_colorant_prop {#1} ~ + } + \@@_backend_devicen_colorants:w + } +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macrocode} +%</dvipdfmx|luatex|pdftex|xetex|dvips> +% \end{macrocode} +% +% \begin{macrocode} %<*dvips> % \end{macrocode} % @@ -535,6 +584,15 @@ { \exp_not:N \int_use:N \g_@@_model_int } {#1} {#2} {#3} {#4} {#5} } + \prop_gput:Nxx \exp_not:N \g_@@_backend_colorant_prop + { / \exp_not:N \str_convert_pdfname:n {#1} } + { + << ~ + /setcolorspace ~ {} ~ + >> ~ begin ~ + color \exp_not:N \int_use:N \g_@@_model_int \c_space_tl + end + } } } \cs_generate_variant:Nn \@@_backend_separation_init:nnnnn { nxx } @@ -740,6 +798,7 @@ [ ~ #1 ~ ] ~ #2 ~ { ~ #3 ~ } ~ + \@@_backend_devicen_colorants:n {#1} ] ~ setcolorspace } ~ def ~ end @@ -793,7 +852,7 @@ % \end{macro} % % \begin{macro}{\@@_backend_separation_init:nnnnn} -% \begin{macro}{\@@_backend_separation_init:n} +% \begin{macro}{\@@_backend_separation_init:nn} % \begin{macro}{\@@_backend_separation_init_CIELAB:nnn} % Initialising the PDF structures needs two parts: creating an object % containing the \enquote{real} name of the Separation, then adding a reference @@ -810,15 +869,11 @@ /C0 ~ [#4] ~ /C1 ~ [#5] /N ~ 1 } - \@@_backend_separation_init:n - { - /Separation ~ - / \str_convert_pdfname:n {#1} ~ #2 ~ - \pdf_object_ref_last: - } + \exp_args:Nx \@@_backend_separation_init:nn + { \str_convert_pdfname:n {#1} } {#2} \bool_lazy_and:nnT { \cs_if_exist_p:N \pdfmanagement_if_active_p: } - { \pdfmanagement_if_active_p:} + { \pdfmanagement_if_active_p: } { \use:x { @@ -829,9 +884,12 @@ } } } -\cs_new_protected:Npn \@@_backend_separation_init:n #1 +\cs_new_protected:Npn \@@_backend_separation_init:nn #1#2 { - \pdf_object_unnamed_write:nx { array } {#1} + \pdf_object_unnamed_write:nx { array } + { /Separation /#1 ~ #2 ~ \pdf_object_ref_last: } + \prop_gput:Nnx \g_@@_backend_colorant_prop { /#1 } + { \pdf_object_ref_last: } } % \end{macrocode} % For CIELAB colors, we need one object per document for the illuminant, @@ -866,7 +924,6 @@ % % \begin{macro}{\@@_backend_devicen_init:nnn} % \begin{macro}[EXP]{\@@_backend_devicen_init:w} -% \begin{macro}{\@@_backend_devicen_init:n} % Similar to the Separations case, but with an arbitrary function for % the alternative space work. % \begin{macrocode} @@ -894,12 +951,13 @@ } { {#3} } } - \@@_backend_separation_init:n + \pdf_object_unnamed_write:nx { array } { /DeviceN ~ [ ~ #1 ~ ] ~ #2 ~ \pdf_object_ref_last: + \@@_backend_devicen_colorants:n {#1} } \bool_lazy_and:nnT { \cs_if_exist_p:N \pdfmanagement_if_active_p: } @@ -920,11 +978,9 @@ \tl_if_blank:nF {#2} { \@@_backend_devicen_init:w #2 \s_@@_stop } } -\cs_new_eq:NN \@@_backend_devicen_init:n \@@_backend_separation_init:n % \end{macrocode} % \end{macro} % \end{macro} -% \end{macro} % % \begin{macrocode} %</dvipdfmx|luatex|pdftex|xetex> diff --git a/macros/latex/contrib/l3backend/l3backend-draw.dtx b/macros/latex/contrib/l3backend/l3backend-draw.dtx index 820c1bcd2c..884dd0167e 100644 --- a/macros/latex/contrib/l3backend/l3backend-draw.dtx +++ b/macros/latex/contrib/l3backend/l3backend-draw.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2021-10-12} +% \date{Released 2021-10-17} % % \maketitle % diff --git a/macros/latex/contrib/l3backend/l3backend-graphics.dtx b/macros/latex/contrib/l3backend/l3backend-graphics.dtx index 1f7895a2ac..602aa29e00 100644 --- a/macros/latex/contrib/l3backend/l3backend-graphics.dtx +++ b/macros/latex/contrib/l3backend/l3backend-graphics.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2021-10-12} +% \date{Released 2021-10-17} % % \maketitle % diff --git a/macros/latex/contrib/l3backend/l3backend-header.dtx b/macros/latex/contrib/l3backend/l3backend-header.dtx index 25aa81e99c..e465fc701d 100644 --- a/macros/latex/contrib/l3backend/l3backend-header.dtx +++ b/macros/latex/contrib/l3backend/l3backend-header.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2021-10-12} +% \date{Released 2021-10-17} % % \maketitle % diff --git a/macros/latex/contrib/l3backend/l3backend-opacity.dtx b/macros/latex/contrib/l3backend/l3backend-opacity.dtx index e2837a2728..9595f5600d 100644 --- a/macros/latex/contrib/l3backend/l3backend-opacity.dtx +++ b/macros/latex/contrib/l3backend/l3backend-opacity.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2021-10-12} +% \date{Released 2021-10-17} % % \maketitle % diff --git a/macros/latex/contrib/l3backend/l3backend-pdf.dtx b/macros/latex/contrib/l3backend/l3backend-pdf.dtx index 78df77acfa..694a0c29a4 100644 --- a/macros/latex/contrib/l3backend/l3backend-pdf.dtx +++ b/macros/latex/contrib/l3backend/l3backend-pdf.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2021-10-12} +% \date{Released 2021-10-17} % % \maketitle % |