[texworks] Wishlist for pdf previewer

Charlie Sharpsteen chuck at sharpsteen.net
Fri Oct 7 17:02:08 CEST 2011


On Sun, Sep 25, 2011 at 5:34 PM, Charlie Sharpsteen <chuck at sharpsteen.net>wrote:

> Bad news on the partial render front---looks like Poppler just can't do
> it---at least not in an efficient manner. Every page render request,
> regardless of the backend that is used, causes Poppler to re-parse the
> entire page rather than parsing once and then working off of some sort of
> cache. The parsing requires the most time and processor power so splitting a
> large pixmap up into tiles basically multiplies the rendering time by the
> number of tiles that are used.
>
> Discussions and bug reports in other projects:
>
>    - Evince: https://bugzilla.gnome.org/show_bug.cgi?id=303365
>    - Okular: https://bugs.kde.org/show_bug.cgi?id=148527
>
> I think Okular's method of dealing with the problem makes the best of a bad
> situation--once the amount of pixels in a rendering request exceeds a
> certain value, they just ignore it. So the user can zoom in as much as they
> like, but after a point things just stay fuzzy. This would be pretty easy to
> implement in our current rendering setup.
>
>
> If only there was an open source PDF library that provided threadsafe
> partial rendering...
>
> -Charlie
>


I have to retract the above statements---Poppler can indeed do partial
rendering in a more efficient manner than full page rendering.

I just finished modifying the viewer prototype so that it splits pages into
tiles that are 1024x1024 pixels and renders the tiles that are currently
showing in the viewport. Memory usage is way down---I can zoom past 10,000%
and the viewer doesn't even show up in my 10 ten memory-intensive processes.

-Charlie
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://tug.org/pipermail/texworks/attachments/20111007/2914ac2c/attachment.html>


More information about the texworks mailing list