New issue
Advanced search Search tips
Starred by 6 users
Status: Duplicate
Merged: issue 2122
Closed: Jan 18
Area: ----
Priority: Low
Type: Defect

Sign in to add a comment
support drawing to devices > 32K
Project Member Reported by, Apr 19 2012 Back to list
Our scan converters (paths, hairlines) use 16.16 to represent their edges, and therefore we cannot draw to a coordinate outside of that range. Currently those code paths just clip their geometry to avoid overflow, and so we just draw nothing.

A possible solution is to tile our rendering (perhaps at a high level like canvas : device boundary) where we would just (re)draw NxN times, each time
    - translate the geometry to re-zero it to the local tile's origin
    - somehow flag shaders that their device coordinates need to be adjust when they invert them to deduce local coordinates

Project Member Comment 1 by, Dec 7 2015
Labels: Hotlist-Fixit
Comment 2 by, Sep 23 2016
Any news on this issue? This bug block the ability for screenshot to be greater than 16384px as per my post to Chrome Headless :!topic/headless-dev/t0ixeHXCzK0 which for long page is quiet problematic.

Project Member Comment 3 by, Sep 23 2016
I don't think the Chrome headless issue is related to Skia. From the log it looks like chrome headless is using OSMesa (sw impl of OpenGL) and that OSMesa context creation is failing to create a context with a large backing store. Chrome uses Skia to draw into tiles that are small enough not to hit the limitation described in this bug.
Comment 4 by, Sep 23 2016
Thanks for the clarification, I will check  it further with the OSmesa project.
Project Member Comment 5 by, Jan 18 (3 days ago)
Mergedinto: 2122
Status: Duplicate
Sign in to add a comment