* update ghostscript to 10.04.0-1
This commit is contained in:
parent
3b900499bd
commit
96022cfb5d
45
ghostscript/.SRCINFO
Normal file
45
ghostscript/.SRCINFO
Normal file
@ -0,0 +1,45 @@
|
||||
pkgbase = ghostscript
|
||||
pkgdesc = An interpreter for the PostScript language
|
||||
pkgver = 10.04.0
|
||||
pkgrel = 1
|
||||
url = https://www.ghostscript.com/
|
||||
arch = x86_64
|
||||
license = AGPL-3.0-or-later
|
||||
makedepends = gtk3
|
||||
makedepends = gnutls
|
||||
makedepends = glu
|
||||
makedepends = freeglut
|
||||
depends = libxt
|
||||
depends = libcups
|
||||
depends = fontconfig
|
||||
depends = zlib
|
||||
depends = libpng
|
||||
depends = libjpeg-turbo
|
||||
depends = jbig2dec
|
||||
depends = libtiff
|
||||
depends = lcms2
|
||||
depends = libpaper
|
||||
depends = ijs
|
||||
depends = openjpeg2
|
||||
depends = libidn
|
||||
depends = poppler-data
|
||||
depends = cairo
|
||||
depends = glibc
|
||||
depends = libx11
|
||||
depends = gdk-pixbuf2
|
||||
depends = glib2
|
||||
source = https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs10040/ghostpdl-10.04.0.tar.xz
|
||||
source = 2010_add_build_timestamp_setting.patch
|
||||
sha512sums = bf54939006e7c0c981cde8434a3c443f37cd31dea3c54ad72c127a00dfc6148a07555caefab6076bea68e17c3f42427a80c47aed09911b1ab4c9cae00e333cde
|
||||
sha512sums = cd7794ee4f28b11177021b950196385200b610127ed6cb94a45e3202b690b721a0dfcc0276ff39448d4dab64c1b31a76e6c323696a8315aad9edc22077f18a3d
|
||||
|
||||
pkgname = ghostscript
|
||||
optdepends = gtk3: needed for gsx
|
||||
|
||||
pkgname = ghostxps
|
||||
pkgdesc = An interpreter for the XPS document language
|
||||
depends = ghostscript=10.04.0-1
|
||||
|
||||
pkgname = ghostpcl
|
||||
pkgdesc = An interpreter for the PCL 6 language
|
||||
depends = ghostscript=10.04.0-1
|
16
ghostscript/.nvchecker.toml
Normal file
16
ghostscript/.nvchecker.toml
Normal file
@ -0,0 +1,16 @@
|
||||
[ghostscript]
|
||||
#source = "git"
|
||||
#git = " http://git.ghostscript.com/ghostpdl.git"
|
||||
#use_max_tag = true
|
||||
|
||||
#prefix = "ghostpdl-"
|
||||
#include_regex = "ghostpdl-.*"
|
||||
#exclude_regex = ".*(rc).*"
|
||||
|
||||
source = "github"
|
||||
github = "ArtifexSoftware/ghostpdl-downloads"
|
||||
#use_max_tag = true
|
||||
use_latest_tag = true
|
||||
#prefix = "v"
|
||||
from_pattern = 'gs(\d+)(\d+)(\d+)(\d+)(\d+)'
|
||||
to_pattern = '\1\2.\3\4.\5'
|
@ -1,92 +0,0 @@
|
||||
From e12b8487283979ab454a32888a3c37d4d9492480 Mon Sep 17 00:00:00 2001
|
||||
From: Ken Sharp <Ken.Sharp@artifex.com>
|
||||
Date: Thu, 14 Mar 2024 13:08:38 +0000
|
||||
Subject: [PATCH] pdfwrite - more improvements for mesh shadings
|
||||
|
||||
Bug #707655 "No output visible with pdfwriter"
|
||||
|
||||
commit 3d6e3acbcda79a0096cd1ad73c7b9b1101a43187 to fix bug #06852
|
||||
unfortunately led to this regression. The problem is related to the
|
||||
scaling of co-ordinates performed when a mesh shading has vertex
|
||||
co-ordinates which are too large for Acrobat 5 (PDF 1.4).
|
||||
|
||||
Acrobat 5 has a limit of =/-32767 on real numbers, which applies to the
|
||||
/Decode array of a mesh shading. Because this is an Acrobat limit, not a
|
||||
limit of the PDF specification we would ordinarily ignore it, but the
|
||||
PDF/A-1 specification chose to carry the Acrobat limitations into the
|
||||
PDF/A spec.
|
||||
|
||||
This commit fixes the problem by correctly scaling the co-ordinate
|
||||
values to the Decode array values when outputting to PDF 1.4 or less,
|
||||
even if no actual co-ordinte scaling is required, and modifying the
|
||||
/Matrix of the Pattern to scale up the Decode values to the real
|
||||
co-ordinates. Crucially we must not scale the Tx and Ty values of the
|
||||
CTM.
|
||||
---
|
||||
devices/vector/gdevpdfv.c | 20 ++++++++++++--------
|
||||
1 file changed, 12 insertions(+), 8 deletions(-)
|
||||
|
||||
diff --git a/devices/vector/gdevpdfv.c b/devices/vector/gdevpdfv.c
|
||||
index e880acafd..90a02158f 100644
|
||||
--- a/devices/vector/gdevpdfv.c
|
||||
+++ b/devices/vector/gdevpdfv.c
|
||||
@@ -42,8 +42,8 @@ extern const gx_device_color_type_t gx_dc_pattern2;
|
||||
*/
|
||||
#define ENCODE_VALUE(v, emax, vmin, vmax)\
|
||||
( ((v) - (vmin)) * ((double)(emax) / ((vmax) - (vmin))) )
|
||||
-#define PDFA_MIN_MESH_COORDINATE (-0x800000 / 256.0)
|
||||
-#define PDFA_MAX_MESH_COORDINATE ( 0x7fffff / 256.0)
|
||||
+#define PDFA_MIN_MESH_COORDINATE (-0x400000 / 128.0)
|
||||
+#define PDFA_MAX_MESH_COORDINATE ( 0x3fffff / 128.0)
|
||||
#define PDFA_ENCODE_MESH_COORDINATE(v)\
|
||||
ENCODE_VALUE(v, 0xffffff, PDFA_MIN_MESH_COORDINATE, PDFA_MAX_MESH_COORDINATE)
|
||||
#define MIN_MESH_COORDINATE (-0x800000 )
|
||||
@@ -690,6 +690,7 @@ typedef struct pdf_mesh_data_params_s {
|
||||
int num_components;
|
||||
bool is_indexed;
|
||||
int rescale; /* If the co-ordinates won't fit into crappy Acrobat values, scale them here and in the pattern Matrix */
|
||||
+ bool old_pdf;
|
||||
const float *Domain; /* iff Function */
|
||||
const gs_range_t *ranges;
|
||||
} pdf_mesh_data_params_t;
|
||||
@@ -713,7 +714,7 @@ put_clamped(byte *p, double v, int num_bytes)
|
||||
static inline void
|
||||
put_clamped_coord(byte *p, double v, int num_bytes, const pdf_mesh_data_params_t *pmdp)
|
||||
{
|
||||
- if (pmdp->rescale != 1.0) {
|
||||
+ if (pmdp->rescale != 1.0 || pmdp->old_pdf) {
|
||||
v = v / pmdp->rescale;
|
||||
put_clamped(p, PDFA_ENCODE_MESH_COORDINATE(v), num_bytes);
|
||||
} else
|
||||
@@ -1027,7 +1028,9 @@ pdf_put_mesh_shading(gx_device_pdf *pdev, cos_stream_t *pscs, const gs_shading_t
|
||||
if (z > *rescale)
|
||||
*rescale = (int)z;
|
||||
data_params.rescale = *rescale;
|
||||
- }
|
||||
+ data_params.old_pdf = 1;
|
||||
+ } else
|
||||
+ data_params.old_pdf = 0;
|
||||
|
||||
switch (ShadingType(psh)) {
|
||||
case shading_type_Free_form_Gouraud_triangle: {
|
||||
@@ -1183,12 +1186,13 @@ pdf_put_pattern2(gx_device_pdf *pdev, const gs_gstate * pgs, const gx_drawing_co
|
||||
yscale = 72.0 / pdev->HWResolution[1];
|
||||
}
|
||||
|
||||
- if (rescale != 1) {
|
||||
- xscale *= rescale;
|
||||
- yscale *= rescale;
|
||||
- }
|
||||
smat.xx *= xscale, smat.yx *= xscale, smat.tx *= xscale;
|
||||
smat.xy *= yscale, smat.yy *= yscale, smat.ty *= yscale;
|
||||
+
|
||||
+ if (rescale != 1) {
|
||||
+ smat.xx *= rescale, smat.yx *= rescale;
|
||||
+ smat.xy *= rescale, smat.yy *= rescale;
|
||||
+ }
|
||||
}
|
||||
|
||||
/* Bug #697451, if we emit a PDF with a type 2 Pattern where the
|
||||
--
|
||||
2.34.1
|
||||
|
@ -3,25 +3,23 @@
|
||||
|
||||
pkgbase=ghostscript
|
||||
pkgname=(ghostscript ghostxps ghostpcl)
|
||||
pkgver=10.03.1
|
||||
pkgver=10.04.0
|
||||
pkgrel=1
|
||||
pkgdesc="An interpreter for the PostScript language"
|
||||
url="https://www.ghostscript.com/"
|
||||
arch=(x86_64 powerpc64le powerpc64 powerpc riscv64)
|
||||
license=('AGPL-3.0-or-later')
|
||||
depends=('libxt' 'libcups' 'fontconfig' 'zlib' 'libpng' 'libjpeg' 'jbig2dec'
|
||||
depends=('libxt' 'libcups' 'fontconfig' 'zlib' 'libpng' 'libjpeg-turbo' 'jbig2dec'
|
||||
'libtiff' 'lcms2' 'libpaper' 'ijs' 'openjpeg2' 'libidn' 'poppler-data'
|
||||
'cairo' 'glibc' 'libx11' 'gdk-pixbuf2' 'glib2')
|
||||
makedepends=('gtk3' 'gnutls' 'glu' 'freeglut')
|
||||
# https://github.com/ArtifexSoftware/ghostpdl-downloads/releases
|
||||
source=(https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs${pkgver//./}/ghostpdl-${pkgver}.tar.xz
|
||||
#https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/ghostpdl-${pkgver/.0//}/ghostpdl-${pkgver}.tar.xz
|
||||
2010_add_build_timestamp_setting.patch
|
||||
0001_No_output_visible_with_pdfwriter.diff)
|
||||
2010_add_build_timestamp_setting.patch)
|
||||
# https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs10031/SHA512SUMS
|
||||
sha512sums=('3aca7834789bf11582391138bbae99b2ef5d9f1e89db9f838ebef0ed86015deb5c8cf93d0ffe25ad8aa1aa99eda9ecd384cbd59b0d21719cd960261c043044f9'
|
||||
'cd7794ee4f28b11177021b950196385200b610127ed6cb94a45e3202b690b721a0dfcc0276ff39448d4dab64c1b31a76e6c323696a8315aad9edc22077f18a3d'
|
||||
'659077a7e60b6c56cf3f2e70fbfc5a7114e1294e7a912e40bce9d7e34f1907fff6e407be6c528961c06e7de5c80c637584929d08ade63b277793284b8b56208d')
|
||||
sha512sums=('bf54939006e7c0c981cde8434a3c443f37cd31dea3c54ad72c127a00dfc6148a07555caefab6076bea68e17c3f42427a80c47aed09911b1ab4c9cae00e333cde'
|
||||
'cd7794ee4f28b11177021b950196385200b610127ed6cb94a45e3202b690b721a0dfcc0276ff39448d4dab64c1b31a76e6c323696a8315aad9edc22077f18a3d')
|
||||
|
||||
### update jbig2dec first! ###
|
||||
|
||||
@ -63,9 +61,6 @@ prepare() {
|
||||
|
||||
# Debian: # allow the build timestamp to be externally set
|
||||
patch -Np1 -i ../2010_add_build_timestamp_setting.patch
|
||||
|
||||
# https://bugs.ghostscript.com/show_bug.cgi?id=707655
|
||||
patch -Np1 -i ../0001_No_output_visible_with_pdfwriter.diff
|
||||
}
|
||||
|
||||
build() {
|
||||
|
Loading…
x
Reference in New Issue
Block a user