Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
P
poppler
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 615
    • Issues 615
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Merge Requests 38
    • Merge Requests 38
  • CI / CD
    • CI / CD
    • Pipelines
    • Jobs
    • Schedules
  • Operations
    • Operations
    • Incidents
    • Environments
  • Packages & Registries
    • Packages & Registries
    • Container Registry
  • Analytics
    • Analytics
    • CI / CD
    • Repository
    • Value Stream
  • Snippets
    • Snippets
  • Members
    • Members
  • Collapse sidebar
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
  • poppler
  • poppler
  • Issues
  • #938

Closed
Open
Opened Jul 08, 2020 by Jacob Siefer@jsiefer

PDF - Stitching functions with sampled function that repeats a pattern does not get rendered

This issue was previously raised downstream at gnome - evince: https://gitlab.gnome.org/GNOME/evince/-/issues/1451

Drawing a linear gradient:

background: linear-gradient(red 0%, green 25%, blue 50%, red 50%, green 75%, blue 100%);
Expected Actual
expected actual

The PDF uses stitching functions with sampled functions. The gradient repeats it self, and looks fine on all viewers. However Evince seems to ignore the last 3 sampled functions and only shows half. By changing the color of one of the color sample values by one, Evince is happy again and renders the files as expected.

See attached files and different in line 97 - second last byte.

fails.pdf

works.pdf

The issue can be reproduced with poppler's utilities. For example:

% pdftoppm -png 'fails.pdf' -o fails-default
% pdftocairo -png 'fails.pdf' -o fails-cairo

Those commands will generate a png each. The first one correctly (splash backend of Poppler), and the second wrongly (cairo backend of Poppler).

Comment by @gpoo

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
None
Milestone
None
Assign milestone
Time tracking
None
Due date
None
Reference: poppler/poppler#938