texlive[72323] Master: Upgrade gs10.03.1 -> gs10.04.0

commits+reinhardk at tug.org commits+reinhardk at tug.org
Thu Sep 19 12:31:47 CEST 2024


Revision: 72323
          https://tug.org/svn/texlive?view=revision&revision=72323
Author:   reinhardk
Date:     2024-09-19 12:31:45 +0200 (Thu, 19 Sep 2024)
Log Message:
-----------
Upgrade gs10.03.1 -> gs10.04.0

Modified Paths:
--------------
    trunk/Master/tlpkg/tlgs/README.TEXLIVE
    trunk/Master/tlpkg/tlgs/Resource/Init/gs_init.ps
    trunk/Master/tlpkg/tlgs/Resource/Init/pdf_main.ps
    trunk/Master/tlpkg/tlgs/bin/gsdll64.dll
    trunk/Master/tlpkg/tlgs/bin/gswin64.exe
    trunk/Master/tlpkg/tlgs/bin/gswin64c.exe
    trunk/Master/tlpkg/tlgs/lib/zugferd.ps

Added Paths:
-----------
    trunk/Master/source/ghostscript-10.04.0.tar.xz

Removed Paths:
-------------
    trunk/Master/source/ghostscript-10.03.1.tar.xz

Deleted: trunk/Master/source/ghostscript-10.03.1.tar.xz
===================================================================
(Binary files differ)

Added: trunk/Master/source/ghostscript-10.04.0.tar.xz
===================================================================
(Binary files differ)

Index: trunk/Master/source/ghostscript-10.04.0.tar.xz
===================================================================
--- trunk/Master/source/ghostscript-10.04.0.tar.xz	2024-09-18 23:42:08 UTC (rev 72322)
+++ trunk/Master/source/ghostscript-10.04.0.tar.xz	2024-09-19 10:31:45 UTC (rev 72323)

Property changes on: trunk/Master/source/ghostscript-10.04.0.tar.xz
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/x-xz
\ No newline at end of property
Modified: trunk/Master/tlpkg/tlgs/README.TEXLIVE
===================================================================
--- trunk/Master/tlpkg/tlgs/README.TEXLIVE	2024-09-18 23:42:08 UTC (rev 72322)
+++ trunk/Master/tlpkg/tlgs/README.TEXLIVE	2024-09-19 10:31:45 UTC (rev 72323)
@@ -1,5 +1,5 @@
 
-This directory contains a subset of the Ghostscript 10.03.1 distribution
+This directory contains a subset of the Ghostscript 10.04.0 distribution
 for Windows.  The only purpose of this package is to support programs
 shipped with TeX Live.  It's not intended for general use. 
 

Modified: trunk/Master/tlpkg/tlgs/Resource/Init/gs_init.ps
===================================================================
--- trunk/Master/tlpkg/tlgs/Resource/Init/gs_init.ps	2024-09-18 23:42:08 UTC (rev 72322)
+++ trunk/Master/tlpkg/tlgs/Resource/Init/gs_init.ps	2024-09-19 10:31:45 UTC (rev 72323)
@@ -34,7 +34,7 @@
 % Interpreter library version number
 % NOTE: the interpreter code requires that the first non-comment token
 % in this file be an integer, and that it match the compiled-in version!
-10031
+10040
 
 % Check the interpreter revision.
 dup revision ne
@@ -1143,13 +1143,12 @@
       (; OffendingCommand: ) print =only ( ]%%) =
     }
     { (Unrecoverable error: ) print =only flush
-      ( in ) print =only flush
+      ( in ) print =only (\n) print flush
       count 2 gt
        { (Operand stack:\n  ) print
          count 1 sub -1 2 { (  ) print index =only flush } for
-         () =only
+         (\n) =only flush
        } if
-       (\n) =only flush
     }
    ifelse
    -1 0 1 //ErrorNames length 1 sub
@@ -1225,7 +1224,7 @@
            }
            {
              exch print exch		% print heading. stack <==flag> <stack>
-             1 index not { () =only } if
+             1 index not { (\n) =only } if
              { 1 index { (\n    ) } { (   ) } ifelse print
                dup type /dicttype eq
                {
@@ -1264,7 +1263,7 @@
        errorname /VMerror eq
         { (VM status:) print mark vmstatus
           counttomark { ( ) print counttomark -1 roll dup =only } repeat
-          cleartomark () =only
+          cleartomark (\n) =only
         } if
 
        .languagelevel 2 ge
@@ -1275,7 +1274,7 @@
        .oserrno dup 0 ne
         { (Last OS error: ) print
           errorname /VMerror ne
-           { dup .oserrorstring { =only pop } { =only } ifelse }
+           { dup .oserrorstring { =only (\n) print pop } { =only (\n) print } ifelse }
            { =only }
           ifelse
         }

Modified: trunk/Master/tlpkg/tlgs/Resource/Init/pdf_main.ps
===================================================================
--- trunk/Master/tlpkg/tlgs/Resource/Init/pdf_main.ps	2024-09-18 23:42:08 UTC (rev 72322)
+++ trunk/Master/tlpkg/tlgs/Resource/Init/pdf_main.ps	2024-09-19 10:31:45 UTC (rev 72323)
@@ -1,4 +1,4 @@
-% Copyright (C) 2001-2023 Artifex Software, Inc.
+% Copyright (C) 2001-2024 Artifex Software, Inc.
 % All Rights Reserved.
 %
 % This software is provided AS-IS with no warranty, either express or
@@ -235,7 +235,7 @@
       % the original, un-modified page. Note that PostScript's rotate operator works
       % counter-clockwise, while PDF works clockwise....
       %
-      7 index dup /Rotate known {/Rotate get}{90}ifelse
+      7 index dup /Rotate known {/Rotate get}{pop 90}ifelse
       270 eq {
         90 rotate
         0 2 index neg translate                 % move 0,0 to bottom right of media to account for rotation
@@ -630,20 +630,40 @@
     } if
   } ifelse
 
-  pop % The box
+  3 1 roll          % <page dict> /BoxName [box dimensions] -> [box dimensions] <page dict> /BoxName
 
   % If we are using the MediaBox (and only the MediaBox) then we
-  % want to clip to the CropBox, if there is one present
+  % want to clip to the CropBox, if there is one present. For every
+  % other case, clip to the given Box.
 
   /MediaBox eq {
     dup /CropBox known {
       /CropBox get
       aload pop 2 index sub exch 3 index sub exch rectclip
+      pop           % [box dimensions] array
     } {
-      pop
+      pop           % <page dict>
+
+      aload         % Load the co-ordinates of the box onto the stack
+      pop           % The array with the box co-ordinates
+                    % llx lly urx ury
+      2 index sub   % ll lly urx (ury - lly)
+      exch          % llx lly height urx
+      3 index sub   % llx lly height (urx - llx)
+      exch          % llx lly width height
+      rectclip
     } ifelse
   } {
-    pop
+    pop             % <page dict>
+
+    aload           % Load the co-ordinates of the box onto the stack
+    pop             % The array with the box co-ordinates
+                    % llx lly urx ury
+    2 index sub     % ll lly urx (ury - lly)
+    exch            % llx lly height urx
+    3 index sub     % llx lly height (urx - llx)
+    exch            % llx lly width height
+    rectclip
   }ifelse
 
   pop
@@ -658,7 +678,7 @@
 % so here we should only handle parameters which control the behaviour of the interpreter.
 %
 /PDFSwitches [ /QUIET /PDFPassword /PDFDEBUG /PDFSTOPONERROR /PDFSTOPONWARNING /NOTRANSPARENCY /FirstPage /LastPage
-               /PDFNOCIDFALLBACK /NO_PDFMARK_OUTLINES /NO_PDFMARK_DESTS /PDFFitPage /Printed /UsePDFX3Profile
+               /PDFA /PDFACompatibilityPolicy /PDFNOCIDFALLBACK /NO_PDFMARK_OUTLINES /NO_PDFMARK_DESTS /PDFFitPage /Printed /UsePDFX3Profile
                /UseBleedBox /UseCropBox /UseArtBox /UseTrimBox /ShowAcroForm /ShowAnnots /PreserveAnnots
                /NoUserUnit /RENDERTTNOTDEF /DOPDFMARKS /PDFINFO /ShowAnnotTypes /PreserveAnnotTypes
                /CIDFSubstPath /CIDFSubstFont /SUBSTFONT /IgnoreToUnicode /NONATIVEFONTMAP /PreserveMarkedContent /OutputFile

Modified: trunk/Master/tlpkg/tlgs/bin/gsdll64.dll
===================================================================
(Binary files differ)

Modified: trunk/Master/tlpkg/tlgs/bin/gswin64.exe
===================================================================
(Binary files differ)

Modified: trunk/Master/tlpkg/tlgs/bin/gswin64c.exe
===================================================================
(Binary files differ)

Modified: trunk/Master/tlpkg/tlgs/lib/zugferd.ps
===================================================================
--- trunk/Master/tlpkg/tlgs/lib/zugferd.ps	2024-09-18 23:42:08 UTC (rev 72322)
+++ trunk/Master/tlpkg/tlgs/lib/zugferd.ps	2024-09-19 10:31:45 UTC (rev 72323)
@@ -39,6 +39,13 @@
 %   the content of the element "GuidelineSpecifiedDocumentContextParameter"
 %   (specification identifier BT-24) of the XML instance file.
 %
+% Optionally:
+%   -sZUGFeRDDateTime can be used to set a string representing the modification
+%   date of the XML invoice file. If this is ommitted a dummy value will be
+%   used. It is up to the user to create a correctly formatted PDF date/time
+%   string. See section 7.9.4 of the PDF 2.0 specification (ISO-32000-2:2017)
+%   for details of the format.
+%
 % The user must additionally set -dPDFA=3 and -sColorConversionStrategy
 % on the Ghostscript command line, and set the permissions for Ghostscript
 % to read both these files. It is simplest to put the files in a directory
@@ -69,6 +76,9 @@
 % The program was further refined and expanded by Adrian Devries in :
 %   https://bugs.ghostscript.com/show_bug.cgi?id=703862
 %
+% And refined again following feedback from Thorsten Engel in:
+%   https://bugs.ghostscript.com/show_bug.cgi?id=707694
+%
 % It should not be necessary to modify this program, the comments in the
 % code are there purely for information, but there is one area which
 % might reasonably be altered. The section with the --8<-- lines could be
@@ -440,9 +450,15 @@
     [ {InvoiceStream} <<
         /Type /EmbeddedFile
         /Subtype (text/xml) cvn
-        % TODO: Determine file length, and add /Length entry
         /Params <<
-          /ModDate (D:20130121081433+01'00') % TODO: Determine file date.
+          /ModDate systemdict /ZUGFeRDDateTime known
+            {ZUGFeRDDateTime}
+            {(D:20130121081433+01'00')}
+            ifelse
+          /Size ZUGFeRDXMLFile status
+            {pop pop exch pop}
+            {(Failed to get file status!\n)print /status load /ioerror signalerror}
+            ifelse
         >>
       >> /PUT pdfmark
     % Now read the data from the file and store it in the stream



More information about the tex-live-commits mailing list.