Inkscape generated .eps files interact badly with psnup from psutils

Bug #1095334 reported by Alex Valavanis
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Inkscape
New
Undecided
Unassigned
inkscape (Debian)
Confirmed
Unknown

Bug Description

Forwarded from Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=620146

From: Ralf Schlatterbeck <email address hidden>
To: Debian Bug Tracking System <email address hidden>
Subject: inkscape generated .eps files interact badly with psnup from psutils
Date: Wed, 30 Mar 2011 16:13:14 +0200
[Message part 1 (text/plain, inline)]
Package: inkscape
Version: 0.47.0-2+b1
Severity: normal
Tags: squeeze

When including inkscape-generated EPS files into LaTeX, then generating
Postscript and then using psnup on the resulting Postscript all text
after the inkscape image lands on the next page. This also seems to
screw up the postscript structuring because there is now one page more.

Only the last image on a page generated by psnup seems to be affected

Steps to reproduce:
- I'm including a test-file t.tex and cc_by_sa.svg, I hope reportbug
  lets me do that :-)
- Issue the following series of commands:
  latex t.tex
  dvips t
  psnup -n 4 t.ps t-4.ps
  gv t-4.ps

You need LaTeX and psutils installed.
for the last step you can use almost any postscript interpreter.

The problem indicates that the inkscape-generated postscript probably
doesn't conform to some postscript guidelines. I was unable to fix the
postscript by editing. My current workaround is to run the
inkscape-generated postscript through Ghostscripts eps2eps -- this fixes
the eps files in question.

-- System Information:
Debian Release: 6.0.1
  APT prefers squeeze-updates
  APT policy: (500, 'squeeze-updates'), (500, 'stable')
Architecture: i386 (i686)

Kernel: Linux 2.6.32-5-686 (SMP w/1 CPU core)
Locale: LANG=en_US.ISO-8859-15, LC_CTYPE=en_US.ISO-8859-15 (charmap=ISO-8859-15)
Shell: /bin/sh linked to /bin/bash

Versions of packages inkscape depends on:
ii libaspell15 0.60.6-4 GNU Aspell spell-checker runtime l
ii libatk1.0-0 1.30.0-1 The ATK accessibility toolkit
ii libc6 2.11.2-10 Embedded GNU C Library: Shared lib
ii libcairo2 1.8.10-6 The Cairo 2D vector graphics libra
ii libcairomm-1.0-1 1.8.4-3 C++ wrappers for Cairo (shared lib
ii libfontconfig1 2.8.0-2.1 generic font configuration library
ii libfreetype6 2.4.2-2.1 FreeType 2 font engine, shared lib
ii libgc1c2 1:6.8-1.2 conservative garbage collector for
ii libgcc1 1:4.4.5-8 GCC support library
ii libgconf2-4 2.28.1-6 GNOME configuration database syste
ii libglib2.0-0 2.24.2-1 The GLib library of C routines
ii libglibmm-2.4-1c2a 2.24.2-1 C++ wrapper for the GLib toolkit (
ii libgnomevfs2-0 1:2.24.3-1 GNOME Virtual File System (runtime
ii libgomp1 4.4.5-8 GCC OpenMP (GOMP) support library
ii libgsl0ldbl 1.14+dfsg-1 GNU Scientific Library (GSL) -- li
ii libgtk2.0-0 2.20.1-2 The GTK+ graphical user interface
ii libgtkmm-2.4-1c2a 1:2.20.3-1 C++ wrappers for GTK+ (shared libr
ii libgtkspell0 2.0.16-1 a spell-checking addon for GTK's T
ii liblcms1 1.18.dfsg-1.2+b3 Color management library
ii libmagick++3 8:6.6.0.4-3 object-oriented C++ interface to I
ii libmagickcore3 8:6.6.0.4-3 low-level image manipulation libra
ii libpango1.0-0 1.28.3-1+squeeze2 Layout and rendering of internatio
ii libpangomm-1.4-1 2.26.2-1 C++ Wrapper for pango (shared libr
ii libpng12-0 1.2.44-1 PNG library - runtime
ii libpoppler-glib4 0.12.4-1.2 PDF rendering library (GLib-based
ii libpoppler5 0.12.4-1.2 PDF rendering library
ii libpopt0 1.16-1 lib for parsing cmdline parameters
ii libsigc++-2.0-0c2a 2.2.4.2-1 type-safe Signal Framework for C++
ii libstdc++6 4.4.5-8 The GNU Standard C++ Library v3
ii libwpd8c2a 0.8.14-1 Library for handling WordPerfect d
ii libwpg-0.1-1 0.1.3-1 WordPerfect graphics import/conver
ii libx11-6 2:1.3.3-4 X11 client-side library
ii libxml2 2.7.8.dfsg-2 GNOME XML library
ii libxslt1.1 1.1.26-6 XSLT 1.0 processing library - runt
ii zlib1g 1:1.2.3.4.dfsg-3 compression library - runtime

Versions of packages inkscape recommends:
ii aspell 0.60.6-4 GNU Aspell spell-checker
ii imagemagick 8:6.6.0.4-3 image manipulation programs
pn libwmf-bin <none> (no description available)
pn perlmagick <none> (no description available)
ii pstoedit 3.50-3+b1 PostScript and PDF files to editab

Versions of packages inkscape suggests:
ii dia-gnome 0.97.1-7 Diagram editor (GNOME version)
ii libgnomevfs2-extra 1:2.24.3-1 GNOME Virtual File System (extra m
pn libsvg-perl <none> (no description available)
pn libxml-xql-perl <none> (no description available)
ii python 2.6.6-3+squeeze6 interactive high-level object-orie
ii python-lxml 2.2.8-2 pythonic binding for the libxml2 a
ii python-numpy 1:1.4.1-5 Numerical Python adds a fast array
pn python-uniconvertor <none> (no description available)
ii ruby 4.5 An interpreter of object-oriented
pn skencil <none> (no description available)
ii ttf-bitstream-vera 1.10-8 The Bitstream Vera family of free

-- no debconf information

Tags: exporting eps
Revision history for this message
Alex Valavanis (valavanisalex) wrote :
Revision history for this message
Alex Valavanis (valavanisalex) wrote :
Revision history for this message
Alex Valavanis (valavanisalex) wrote :
jazzynico (jazzynico)
tags: added: eps
Changed in inkscape (Debian):
status: Unknown → Confirmed
Revision history for this message
Alex Cherepanov (alexcher-gs) wrote :

The problem is caused by by the Incscape EPS file that places the userdict on top of the dictionary stack and brings in all the context it has. In particular, it brings an unwanted definition of /showpage.

Patching the EPS file solves the problem.

--- cc_by_sa.eps 2021-06-02 23:49:29.426574732 -0400
+++ cc_by_sa-fixed.eps 2021-06-02 23:50:11.731325295 -0400
@@ -11,7 +11,7 @@
 /cairo_eps_state save def
 /dict_count countdictstack def
 /op_count count 1 sub def
-userdict begin
+100 dict begin
 /q { gsave } bind def
 /Q { grestore } bind def
 /cm { 6 array astore concat } bind def

My copy of Incscape, Inkscape 0.92.5 (2060ec1f9f, 2020-04-08) already has a similar fix. I believe that this bug can be closed as fixed.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.