[Poppler-bugs] [Bug 105796] Render a single annotation with Qt5 frontend

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Tue May 1 16:13:29 UTC 2018


https://bugs.freedesktop.org/show_bug.cgi?id=105796

Tobias Deiminger <haxtibal at posteo.de> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
 Attachment #138409|0                           |1
        is obsolete|                            |

--- Comment #7 from Tobias Deiminger <haxtibal at posteo.de> ---
Created attachment 139252
  --> https://bugs.freedesktop.org/attachment.cgi?id=139252&action=edit
New API: Add Annotation::renderToImage to Qt5 frontend (rev 2)

Add copyXRef option to PDFDoc::displayAnnot for thread safety.

It took me while to figure out what the copyXRef argument in Page::displaySlice
is about. Commit 8eb489c355d734a72e140ce7e32470d048362499 and bug #50992
explain it. Now I do something similar for PDFDoc::displayAnnot. Arthur gets
copyXRef=gFalse (i.e. no thread safety), because QT restricts painting to the
main thread anyway.

Sidenotes:
* Maybe we should add a few comments or documentation, to explain copyXRef in
Page::displaySlice?
* In Page::displaySlice the Page object and relevant members are temporarily
pointed to a XRef copy, and Gfx is constructed with that copy. When Annot::draw
is called, the Annot object is supposed to use the passed gfx->getXRef instead
of member Annot::xref. Only gfx->getXRef points to the copy. When working on
Annot, imho it's not obvious that only gfx->getXRef is thread safe and
therefore that's not newbie-safe:)

Rebased on patch2_reusable_render_setup_r2.patch.

(Sorry, I messed up the "obsoletes" checkboxes, now patch3-rev2 obsoletes
patch2-rev1, and patch2-rev2 obsoletes patch3-rev1. Should have been the other
way round.)

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/poppler-bugs/attachments/20180501/056fe027/attachment.html>


More information about the Poppler-bugs mailing list