[latex3-commits] [git/LaTeX3-latex3-latex3] main: Reset opacity with non-stacked backend (fixes #1107) (b883b5a06)

Joseph Wright joseph.wright at morningstar2.co.uk
Fri Jul 1 21:27:08 CEST 2022


Repository : https://github.com/latex3/latex3
On branch  : main
Link       : https://github.com/latex3/latex3/commit/b883b5a06d8c3e2d0d2bcc9b6fcfa23d39d73e8c

>---------------------------------------------------------------

commit b883b5a06d8c3e2d0d2bcc9b6fcfa23d39d73e8c
Author: Joseph Wright <joseph.wright at morningstar2.co.uk>
Date:   Fri Jul 1 20:27:08 2022 +0100

    Reset opacity with non-stacked backend (fixes #1107)


>---------------------------------------------------------------

b883b5a06d8c3e2d0d2bcc9b6fcfa23d39d73e8c
 l3backend/CHANGELOG.md                                    | 1 +
 l3backend/l3backend-opacity.dtx                           | 4 ++++
 l3experimental/l3opacity/testfiles/m3opacity001.xetex.tlg | 4 ++++
 3 files changed, 9 insertions(+)

diff --git a/l3backend/CHANGELOG.md b/l3backend/CHANGELOG.md
index e9bf8a140..784426901 100644
--- a/l3backend/CHANGELOG.md
+++ b/l3backend/CHANGELOG.md
@@ -9,6 +9,7 @@ this project uses date-based 'snapshot' version identifiers.
 #### Fixed
 - Do not include PDF file to count pages on pdfTeX
 - Opacity creation with `dvipdfmx`/XeTeX  (issue [\#1106](https://github.com/latex3/latex3/issues/1106))
+- Reset opacity when no stack is available at the backend (issue [\#1107](https://github.com/latex3/latex3/issues/1107))
 
 ## [2022-04-20]
 
diff --git a/l3backend/l3backend-opacity.dtx b/l3backend/l3backend-opacity.dtx
index dc5f5d5d3..2c6401a65 100644
--- a/l3backend/l3backend-opacity.dtx
+++ b/l3backend/l3backend-opacity.dtx
@@ -197,6 +197,10 @@
   }
 \cs_new_protected:Npn \@@_backend_reset:
  {
+%<*dvipdfmx|xetex>
+   \__kernel_backend_literal_pdf:n
+      { /opacity1 ~ gs }
+%</dvipdfmx|xetex>
 %<*luatex|pdftex>
     \__kernel_color_backend_stack_pop:n \c_@@_backend_stack_int
 %</luatex|pdftex>
diff --git a/l3experimental/l3opacity/testfiles/m3opacity001.xetex.tlg b/l3experimental/l3opacity/testfiles/m3opacity001.xetex.tlg
index fa25dfbb7..77174e542 100644
--- a/l3experimental/l3opacity/testfiles/m3opacity001.xetex.tlg
+++ b/l3experimental/l3opacity/testfiles/m3opacity001.xetex.tlg
@@ -139,6 +139,7 @@ and I'll forget about whatever was undefined.
 .\OT1/cmr/m/n/10 l
 .\OT1/cmr/m/n/10 l
 .\OT1/cmr/m/n/10 o
+.\special{pdf:literal /opacity1 gs}
 ! OK.
 <argument> \l_tmpa_box 
 l. ...  }
@@ -265,6 +266,7 @@ and I'll forget about whatever was undefined.
 .\OT1/cmr/m/n/10 l
 .\OT1/cmr/m/n/10 l
 .\OT1/cmr/m/n/10 o
+.\special{pdf:literal /opacity1 gs}
 ! OK.
 <argument> \l_tmpa_box 
 l. ...  }
@@ -409,6 +411,7 @@ and I'll forget about whatever was undefined.
 .\OT1/cmr/m/n/10 l
 .\OT1/cmr/m/n/10 l
 .\OT1/cmr/m/n/10 o
+.\special{pdf:literal /opacity1 gs}
 ! OK.
 <argument> \l_tmpa_box 
 l. ...  }
@@ -537,6 +540,7 @@ and I'll forget about whatever was undefined.
 .\OT1/cmr/m/n/10 l
 .\OT1/cmr/m/n/10 l
 .\OT1/cmr/m/n/10 o
+.\special{pdf:literal /opacity1 gs}
 ! OK.
 <argument> \l_tmpa_box 
 l. ...  }





More information about the latex3-commits mailing list.