<table><tr><td style="">rkflx added a comment.
</td><a style="text-decoration: none; padding: 4px 8px; margin: 0 8px 8px; float: right; color: #464C5C; font-weight: bold; border-radius: 3px; background-color: #F7F7F9; background-image: linear-gradient(to bottom,#fff,#f1f0f1); display: inline-block; border: 1px solid rgba(71,87,120,.2);" href="https://phabricator.kde.org/D7949" rel="noreferrer">View Revision</a></tr></table><br /><div><div><blockquote style="border-left: 3px solid #a7b5bf; color: #464c5c; font-style: italic; margin: 4px 0 12px 0; padding: 4px 12px; background-color: #f8f9fc;"><p>Implement all of Henrik's suggestions.</p></blockquote>

<p>Had a final look, looks mostly good to me now – thanks. See below for some minor nits. (Could not mark my old inline comments as done, I guess the original author has to do that…).</p>

<blockquote style="border-left: 3px solid #a7b5bf; color: #464c5c; font-style: italic; margin: 4px 0 12px 0; padding: 4px 12px; background-color: #f8f9fc;"><p>I implemented a longer "What's this" help, but I couldn't make it appear in the GUI. What's the magic button for that?</p></blockquote>

<p>Normally you can right-click or use the question mark tool in the dialog's title bar. However, this does not seem to work with combobox popups (some focus issue, it does work with normal menu popups, though). The easiest solution for this would be to move all of the text to the tooltip, with <tt style="background: #ebebeb; font-size: 13px;">\n</tt> for line breaks. If you want to get fancy, you could switch to radio buttons or add a text area next to the combobox with the explanation (but not sure if worth it).</p>

<hr class="remarkup-hr" />

<blockquote style="border-left: 3px solid #a7b5bf; color: #464c5c; font-style: italic; margin: 4px 0 12px 0; padding: 4px 12px; background-color: #f8f9fc;"><blockquote style="border-left: 3px solid #a7b5bf; color: #464c5c; font-style: italic; margin: 4px 0 12px 0; padding: 4px 12px; background-color: #f8f9fc;"><p>page 21: parts of vector (?) illustration missing</p></blockquote>

<p>A patch for this can be found at <a href="https://bugs.freedesktop.org/show_bug.cgi?id=103118" class="remarkup-link" target="_blank" rel="noreferrer">https://bugs.freedesktop.org/show_bug.cgi?id=103118</a></p></blockquote>

<p>Amazing :) (but does not apply to Poppler's git master?) Here's another one: <a href="http://web.mit.edu/rsi/www/pdfs/beamer-tutorial.pdf" class="remarkup-link" target="_blank" rel="noreferrer">shadows on page 39</a>. Currently I don't have time to hunt for more rendering bugs, but is there any way you could do an automated comparison between Arthur and Splash using Albert's PDF collection?</p>

<blockquote style="border-left: 3px solid #a7b5bf; color: #464c5c; font-style: italic; margin: 4px 0 12px 0; padding: 4px 12px; background-color: #f8f9fc;"><p>On the other hand one could argue that this is what "printing to a file" actually means: you lose all semantic information like letters, annotations, tags, etc.</p></blockquote>

<p>In general "printing" can be used for more, e.g. selecting a subset of pages, creating n-up PDFs or "flattening" filled out PDF forms to read-only PDFs. Preserving fonts is also something you get when printing via CUPS or (similar to QPrinter) via Cairo in Evince. It's a nice-to-have property, but obviously not relevant for this patch.</p>

<blockquote style="border-left: 3px solid #a7b5bf; color: #464c5c; font-style: italic; margin: 4px 0 12px 0; padding: 4px 12px; background-color: #f8f9fc;"><p>QFonts cannot represent fonts that are embedded in a pdf document---you need a QRawFont for that.</p></blockquote>

<p>Might be worth trying to ask the Qt experts on that, also as a followup to <a href="https://bugs.freedesktop.org/show_bug.cgi?id=102290" class="remarkup-link" target="_blank" rel="noreferrer">fdo#102290</a>…</p></div></div><br /><div><strong>INLINE COMMENTS</strong><div><div style="margin: 6px 0 12px 0;"><div style="border: 1px solid #C7CCD9; border-radius: 3px;"><div style="padding: 0; background: #F7F7F7; border-color: #e3e4e8; border-style: solid; border-width: 0 0 1px 0; margin: 0;"><div style="color: #74777d; background: #eff2f4; padding: 6px 8px; overflow: hidden;"><a style="float: right; text-decoration: none;" href="https://phabricator.kde.org/D7949#inline-34874" rel="noreferrer">View Inline</a><span style="color: #4b4d51; font-weight: bold;">generator_pdf.cpp:99</span></div>
<div style="font: 11px/15px "Menlo", "Consolas", "Monaco", monospace; white-space: pre-wrap; clear: both; padding: 4px 0; margin: 0;"><div style="padding: 0 8px; margin: 0 4px; background: rgba(151, 234, 151, .6);"><span style="color: #304a96">#if !defined(Q_OS_WIN)</span>
</div><div style="padding: 0 8px; margin: 0 4px; background: rgba(151, 234, 151, .6);">           <span class="n">m_printBackend</span><span style="color: #aa2211">-></span><span class="n">insertItem</span><span class="p">(</span><span class="n">CUPSBackend</span><span class="p">,</span> <span style="color: #766510">"CUPS"</span><span class="p">,</span> <span class="n">CUPSBackend</span><span class="p">);</span>
</div><div style="padding: 0 8px; margin: 0 4px; background: rgba(151, 234, 151, .6);">           <span class="n">m_printBackend</span><span style="color: #aa2211">-></span><span class="n">setItemData</span><span class="p">(</span><span class="n">CUPSBackend</span><span class="p">,</span> <span class="n">i18n</span><span class="p">(</span><span style="color: #766510">"Print with CUPS"</span><span class="p">),</span> <span class="n">Qt</span><span style="color: #aa2211">::</span><span class="n">ToolTipRole</span><span class="p">);</span>
</div></div></div>
<div style="margin: 8px 0; padding: 0 12px;"><p style="padding: 0; margin: 8px;"><tt style="background: #ebebeb; font-size: 13px;">i18n</tt> needed here?</p></div></div><br /><div style="border: 1px solid #C7CCD9; border-radius: 3px;"><div style="padding: 0; background: #F7F7F7; border-color: #e3e4e8; border-style: solid; border-width: 0 0 1px 0; margin: 0;"><div style="color: #74777d; background: #eff2f4; padding: 6px 8px; overflow: hidden;"><a style="float: right; text-decoration: none;" href="https://phabricator.kde.org/D7949#inline-34873" rel="noreferrer">View Inline</a><span style="color: #4b4d51; font-weight: bold;">generator_pdf.cpp:101</span></div>
<div style="font: 11px/15px "Menlo", "Consolas", "Monaco", monospace; white-space: pre-wrap; clear: both; padding: 4px 0; margin: 0;"><div style="padding: 0 8px; margin: 0 4px; background: rgba(151, 234, 151, .6);">           <span class="n">m_printBackend</span><span style="color: #aa2211">-></span><span class="n">setItemData</span><span class="p">(</span><span class="n">CUPSBackend</span><span class="p">,</span> <span class="n">i18n</span><span class="p">(</span><span style="color: #766510">"Print with CUPS"</span><span class="p">),</span> <span class="n">Qt</span><span style="color: #aa2211">::</span><span class="n">ToolTipRole</span><span class="p">);</span>
</div><div style="padding: 0 8px; margin: 0 4px; background: rgba(151, 234, 151, .6);">           <span class="n">m_printBackend</span><span style="color: #aa2211">-></span><span class="n">setItemData</span><span class="p">(</span><span class="n">CUPSBackend</span><span class="p">,</span> <span class="n">i18n</span><span class="p">(</span><span style="color: #766510">"Print using the CUPS printing system.  This will convert your pdf file to postscript first, and then send the postscript file to the printer."</span><span class="p">),</span> <span class="n">Qt</span><span style="color: #aa2211">::</span><span class="n">WhatsThisRole</span><span class="p">);</span>
</div><div style="padding: 0 8px; margin: 0 4px; background: rgba(151, 234, 151, .6);"><span style="color: #304a96">#endif</span>
</div></div></div>
<div style="margin: 8px 0; padding: 0 12px;"><p style="padding: 0; margin: 8px;">pdf → PDF<br />
postscript → PostScript</p></div></div><br /><div style="border: 1px solid #C7CCD9; border-radius: 3px;"><div style="padding: 0; background: #F7F7F7; border-color: #e3e4e8; border-style: solid; border-width: 0 0 1px 0; margin: 0;"><div style="color: #74777d; background: #eff2f4; padding: 6px 8px; overflow: hidden;"><a style="float: right; text-decoration: none;" href="https://phabricator.kde.org/D7949#inline-34875" rel="noreferrer">View Inline</a><span style="color: #4b4d51; font-weight: bold;">generator_pdf.cpp:108</span></div>
<div style="font: 11px/15px "Menlo", "Consolas", "Monaco", monospace; white-space: pre-wrap; clear: both; padding: 4px 0; margin: 0;"><div style="padding: 0 8px; margin: 0 4px; background: rgba(151, 234, 151, .6);"><span style="color: #304a96">#if defined(Q_OS_WIN) || HAVE_POPPLER_0_60</span>
</div><div style="padding: 0 8px; margin: 0 4px; background: rgba(151, 234, 151, .6);">           <span class="n">m_printBackend</span><span style="color: #aa2211">-></span><span class="n">insertItem</span><span class="p">(</span><span class="n">QPrinterBackend</span><span class="p">,</span> <span style="color: #766510">"QPrinter (experimental)"</span><span class="p">,</span> <span class="n">QPrinterBackend</span><span class="p">);</span>
</div><div style="padding: 0 8px; margin: 0 4px; background: rgba(151, 234, 151, .6);">           <span class="n">m_printBackend</span><span style="color: #aa2211">-></span><span class="n">setItemData</span><span class="p">(</span><span class="n">QPrinterBackend</span><span class="p">,</span> <span class="n">i18n</span><span class="p">(</span><span style="color: #766510">"Print with Qt (experimental, you may see rendering artifacts)"</span><span class="p">),</span> <span class="n">Qt</span><span style="color: #aa2211">::</span><span class="n">ToolTipRole</span><span class="p">);</span>
</div></div></div>
<div style="margin: 8px 0; padding: 0 12px;"><p style="padding: 0; margin: 8px;">definitely <tt style="background: #ebebeb; font-size: 13px;">i18n</tt> missing</p></div></div><br /><div style="border: 1px solid #C7CCD9; border-radius: 3px;"><div style="padding: 0; background: #F7F7F7; border-color: #e3e4e8; border-style: solid; border-width: 0 0 1px 0; margin: 0;"><div style="color: #74777d; background: #eff2f4; padding: 6px 8px; overflow: hidden;"><a style="float: right; text-decoration: none;" href="https://phabricator.kde.org/D7949#inline-34876" rel="noreferrer">View Inline</a><span style="color: #4b4d51; font-weight: bold;">generator_pdf.cpp:110</span></div>
<div style="font: 11px/15px "Menlo", "Consolas", "Monaco", monospace; white-space: pre-wrap; clear: both; padding: 4px 0; margin: 0;"><div style="padding: 0 8px; margin: 0 4px; background: rgba(151, 234, 151, .6);">           <span class="n">m_printBackend</span><span style="color: #aa2211">-></span><span class="n">setItemData</span><span class="p">(</span><span class="n">QPrinterBackend</span><span class="p">,</span> <span class="n">i18n</span><span class="p">(</span><span style="color: #766510">"Print with Qt (experimental, you may see rendering artifacts)"</span><span class="p">),</span> <span class="n">Qt</span><span style="color: #aa2211">::</span><span class="n">ToolTipRole</span><span class="p">);</span>
</div><div style="padding: 0 8px; margin: 0 4px; background: rgba(151, 234, 151, .6);">           <span class="n">m_printBackend</span><span style="color: #aa2211">-></span><span class="n">setItemData</span><span class="p">(</span><span class="n">QPrinterBackend</span><span class="p">,</span> <span class="n">i18n</span><span class="p">(</span><span style="color: #766510">"Print by using the platform-independent Qt infrastructure. By necessity, this uses a backend of the Poppler pdf library which is called 'Arthur'.  This Arthur backend is still somewhat immature, and you may see misrenderings of your pdf document. On the positive side, QPrinter printing allows more printing options."</span><span class="p">),</span> <span class="n">Qt</span><span style="color: #aa2211">::</span><span class="n">WhatsThisRole</span><span class="p">);</span>
</div><div style="padding: 0 8px; margin: 0 4px; background: rgba(151, 234, 151, .6);"><span style="color: #304a96">#endif</span>
</div></div></div>
<div style="margin: 8px 0; padding: 0 12px;"><p style="padding: 0; margin: 8px;">pdf → PDF</p></div></div></div></div></div><br /><div><strong>REVISION DETAIL</strong><div><a href="https://phabricator.kde.org/D7949" rel="noreferrer">https://phabricator.kde.org/D7949</a></div></div><br /><div><strong>To: </strong>sander, Okular<br /><strong>Cc: </strong>ltoscano, rkflx, michaelweghorn, ngraham, aacid<br /></div>