Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • P poppler
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 664
    • Issues 664
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 46
    • Merge requests 46
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Container Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • poppler
  • poppler
  • Issues
  • #938
Closed
Open
Issue created 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
Time tracking