Bug#454550: Here is a conflict of our interests

2008-03-29 Thread Sven Arvidsson
reassign 454550 poppler 0.6.4-1
forwarded 454550 https://bugs.freedesktop.org/show_bug.cgi?id=9860
thanks

Hi,

The PS issue has been solved by using libspectre in Evince 2.22. The PDF
problem remains, so I will reassign this bug to Poppler.

-- 
Cheers,
Sven Arvidsson
http://www.whiz.se
PGP Key ID 760BDD22


signature.asc
Description: This is a digitally signed message part


Bug#454550: Here is a conflict of our interests

2008-02-07 Thread Alexander E. Patrakov
Hello Zack,

The -DDOINTERPOLATE Ghostscript option was added to Evince at my
request, logged as the following GNOME bug report (now closed):

http://bugzilla.gnome.org/show_bug.cgi?id=319049

Fixing your bug by removing -DDOINTERPOLATE unconditionally would
reopen the bug above. IMHO, we should formulate the rules for the
desired Evince behaviour that suit us both before doing anything with
the code or compilation options.

-- 
Alexander E. Patrakov



-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Bug#454550: Here is a conflict of our interests

2008-02-07 Thread Zack Weinberg
On Thu, Feb 7, 2008 at 5:06 AM, Alexander E. Patrakov
[EMAIL PROTECTED] wrote:
 Hello Zack,

  The -DDOINTERPOLATE Ghostscript option was added to Evince at my
  request, logged as the following GNOME bug report (now closed):
[...]

Thanks for the counterexample.  I agree that your file is rendered
better with -dDOINTERPOLATE / equivalent behavior from the PDF
renderer (I care about consistency between PDF and PS renderers as
well as the behavior of each).

Have you looked at my test cases?  Do you agree that those are
rendered better without interpolation?

I think this is going to have to get fixed inside the renderers,
because a document could easily have some images that should be
interpolated and others that shouldn't; a global toggle (even if
accessible in the UI) is not good enough.  The heuristic that comes to
mind is to enable interpolation only for images that are not being
scaled up by more than 10% or so of their natural size.  My test
cases, and the other test cases in the Gnome bug to which this was
forwarded, involve low-resolution bitmaps representing mathematical
objects, scaled to large multiples of their natural size; it is very
important to have sharp lines in that case.

zw



-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Bug#454550: Here is a conflict of our interests

2008-02-07 Thread Alexander E. Patrakov

Zack Weinberg wrote:

The heuristic that comes to
mind is to enable interpolation only for images that are not being
scaled up by more than 10% or so of their natural size.


Here is a better approach that has correct limits and also handles non-uniform 
scaling and rotation.


Note that the source bitmap defines a function of two real (not integer!) 
variables (xdest and ydest) that has a constant value in each rectangle 
corresponding to a source pixel (and discontinuities at the edges of source 
pixels). The value of the destination pixel should be the integral from this 
(piecewise-constant) function over the area covered by this destination pixel.


--
Alexander E. Patrakov



--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Bug#454550: Here is a conflict of our interests

2008-02-07 Thread Alexander E. Patrakov

Zack Weinberg wrote:

Have you looked at my test cases?  Do you agree that those are
rendered better without interpolation?


Yes, and you have described them very well. Rendering them with interpolation 
produces clearly wrong results. However, questions stand 1) whether representing 
such sets of rectangles with low-resolution bitmaps is valid according to the 
PostScript and PDF specifications (hint: importing this into CorelDraw under 
Windows gives a warning about a low-resolution bitmap), and 2) if the standard 
does allow interpolation in this case, how widespread is this assumption of 
non-interpolated rendering in (broken) software that creates such files.


In either case, your don't interpolate on upscaling heuristic looks good 
enough in theory, but is not currently implementable in practice for PostScript 
files processed via Ghostscript (because there is no such command line option 
for Evince to pass to Ghostscript). And that's a bug in Ghostscript.


--
Alexander E. Patrakov



--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Bug#454550: Here is a conflict of our interests

2008-02-07 Thread Zack Weinberg
On Thu, Feb 7, 2008 at 10:45 AM, Alexander E. Patrakov
[EMAIL PROTECTED] wrote:
  Yes, and you have described them very well. Rendering them with interpolation
  produces clearly wrong results. However, questions stand 1) whether 
 representing
  such sets of rectangles with low-resolution bitmaps is valid according to the
  PostScript and PDF specifications (hint: importing this into CorelDraw under
  Windows gives a warning about a low-resolution bitmap), and 2) if the 
 standard
  does allow interpolation in this case, how widespread is this assumption of
  non-interpolated rendering in (broken) software that creates such files.

I can't speak to point 1, but the test cases I provided were generated
by Matlab, which is very widely used; I looked for a toggle to disable
this behavior and could not find one.  If you look at the upstream
bugs that this one is forwarded to, and the bugs that those are merged
with, and so on, you will see several more people with exactly the
same sort of low-resolution bitmap generated by other scientific
software, complaining loudly about the interpolation.

Thus, whether or not this tactic fits the letter of the
specifications, I think these low-resolution bitmaps (good phrase,
btw) must be rendered uninterpolated.  Note also that this is what
every PostScript printer does.

  In either case, your don't interpolate on upscaling heuristic looks good
  enough in theory, but is not currently implementable in practice for 
 PostScript
  files processed via Ghostscript (because there is no such command line option
  for Evince to pass to Ghostscript). And that's a bug in Ghostscript.

Yes, that's what I meant when I said this has to be fixed in the renderers.

zw



-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]