Bug 4536

Summary: folding lines not displayed on PDF files
Product: poppler Reporter: Pablo Rodríguez <freedesktop>
Component: cairo backendAssignee: poppler-bugs <poppler-bugs>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: high CC: carlosgc, nalimilan, nicolas, pvillavi, ruena
Version: unspecified   
Hardware: x86 (IA32)   
OS: Linux (All)   
i915 platform: i915 features:
Attachments: acrobat display
folding lines acrobat display
folding lines evince display
another evince display
set minimum line width to 1
align 1 pixel wide lines

Description Pablo Rodríguez 2005-09-21 04:54:06 UTC
poppler is not able to render all lines in PDF calendars from
http://www.ii.uib.no/~arntzen/kalender/ (either regular or rhombic dodecaedrons).

I'm using cairo (just in case it helps).
Comment 1 Pablo Rodríguez 2005-09-21 07:48:00 UTC
gpdf and xpdf display these calendars fine.
Comment 2 Kristian Høgsberg 2005-12-04 15:56:13 UTC
I don't see any problems with these PDFs.  Could you please attach the specific
PDF you see a problem with and a screenshot.  Alternatively, if the problem is
gone, please close the bug.  Thanks.
Comment 3 Pablo Rodríguez 2006-04-12 06:13:12 UTC
Sorry, I forgot that. I use the lastest stable version and I don't get the
images right. In the attachment you have what Acrobat displays and what evince
Comment 4 Pablo Rodríguez 2006-04-12 06:13:56 UTC
Created attachment 5264 [details]
acrobat display
Comment 5 Pablo Rodríguez 2006-04-12 06:14:44 UTC
Created attachment 5265 [details]
folding lines acrobat display
Comment 6 Pablo Rodríguez 2006-04-12 06:15:30 UTC
Created attachment 5266 [details]
folding lines evince display
Comment 7 Pablo Rodríguez 2006-04-12 06:16:16 UTC
Created attachment 5268 [details]
another evince display
Comment 8 Pablo Rodríguez 2007-01-14 06:51:56 UTC
Comment on attachment 5266 [details]
folding lines evince display

In the attachments described as “folding lines”, acrobat displays the
folding lines, but evince doesn't.

The other two attachments show no difference in rendering (but I don't know how
to remove them).
Comment 9 Benjamin Close 2008-01-11 02:37:10 UTC
Bugzilla Upgrade Mass Bug Change

NEEDSINFO state was removed in Bugzilla 3.x, reopening any bugs previously listed as NEEDSINFO.

  - benjsc
    fd.o Wrangler
Comment 10 Albert Astals Cid 2009-06-17 13:55:13 UTC
Can you check with a new poppler?
Comment 11 Pablo Rodríguez 2009-07-05 10:36:42 UTC
Folding lines are not different than the ones displayed in the attachment three years ago using poppler-0.11.1 and evince-2.26.2.

I hope it helps.


Comment 12 Pablo Rodríguez 2009-07-05 10:40:08 UTC
I realize that I haven't explained the issue accurately.

Attachments 1 and 4 might be right (and poppler fixed), since folding lines are displayed fine.

But attachments 2 and 3 are those with folding lines not properly displayed.

I update the summary accordingly.

I hope it is clear now.

Comment 13 Albert Astals Cid 2009-07-12 10:55:59 UTC
Cairo only problem
Comment 14 Carlos Garcia Campos 2009-07-16 05:22:33 UTC
I've just generated one of those pdfs and I can see all the lines. 
Comment 15 Pablo Rodríguez 2009-07-16 13:56:56 UTC
(In reply to comment #14)
> I've just generated one of those pdfs and I can see all the lines.

Regular dodecahedron is displayed fine, but rhombic dodecahedron isn't. The folding lines are missing there. (Compare https://bugs.freedesktop.org/attachment.cgi?id=5266 with https://bugs.freedesktop.org/attachment.cgi?id=5265.)

I hope it helps,

Comment 16 Carlos Garcia Campos 2009-08-02 09:32:59 UTC
confirmed, it seems there's a problem when line_width < 1.0. 
Comment 17 Carlos Garcia Campos 2009-08-02 09:33:28 UTC
*** Bug 11288 has been marked as a duplicate of this bug. ***
Comment 18 Carlos Garcia Campos 2009-08-09 08:50:38 UTC
*** Bug 21729 has been marked as a duplicate of this bug. ***
Comment 19 Carlos Garcia Campos 2009-08-09 10:51:18 UTC
*** Bug 14315 has been marked as a duplicate of this bug. ***
Comment 20 Carlos Garcia Campos 2009-10-07 01:21:07 UTC
*** Bug 24228 has been marked as a duplicate of this bug. ***
Comment 21 Pablo Rodríguez 2010-06-13 11:47:31 UTC
Seems not to have been fixed in poppler-0.14.0 (tested with gtk-splash-test).

Again, for some strange reason gtk-cairo-test seems not to be able to load it.
Comment 22 Carlos Garcia Campos 2010-07-13 08:18:56 UTC
*** Bug 29043 has been marked as a duplicate of this bug. ***
Comment 23 Adrian Johnson 2011-08-23 04:52:24 UTC
Created attachment 50481 [details] [review]
set minimum line width to 1

PDF has a Stroke Adjust parameter than when true requires that lines be at least 1 pixel wide. This patch adds a stroke_adjust parameter to CairoOutputDev that when true adjusts lines with a device width of < 0.5 pixels to be 0.5 pixels wide.

Like the splash backend, the Stroke Adjust parameter is initialized from the globalParam setting (with default value true) and overrides the setting in the PDF file. This emulates Adobe Reader where the Stroke Adjust is controlled by the "Enhance Thin Lines" setting in Preferences (defaults to true) that overrides the SA in the PDF file.

I found a minimum line of of 0.5 to produce better results than using 1.0 because unaligned horizontal and vertical 1.0 width lines in cairo are rendered 2 pixels wide. The test case in bug 14315 is a good example.
Comment 24 Adrian Johnson 2011-08-23 04:57:15 UTC
Created attachment 50482 [details] [review]
align 1 pixel wide lines

This patch extends to the previous fix to align 1 pixel wide lines so that cairo renders them 1 pixel wide as described at http://www.cairographics.org/FAQ/#sharp_lines

The minimum line width has been increased to 1 pixel wide now that the rendered width is 1 pixel wide.

The test case in bug 14315 now renders almost exactly like Adobe Reader.
Comment 25 Milan Bouchet-Valat 2011-08-23 06:42:33 UTC
Hey, it's great you tackle this kind of rendering glitches!
Comment 26 Carlos Garcia Campos 2011-08-28 04:10:49 UTC
Yes!, thank you very much Adrian, both patches have been pushed to git master.
Comment 27 Adrian Johnson 2012-02-16 04:12:55 UTC
*** Bug 14133 has been marked as a duplicate of this bug. ***

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.