Bugzilla – Attachment 707 Details for
Bug 2776
Switch to Poppler instead of Sumatra, if possible
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
Test report
pdftocairo.html (text/html), 26.50 KB, created by
Henrik Andersson
on 2016-06-02 16:13:46 CEST
(
hide
)
Description:
Test report
Filename:
MIME Type:
Creator:
Henrik Andersson
Created:
2016-06-02 16:13:46 CEST
Size:
26.50 KB
patch
obsolete
><!--?xml version="1.0" encoding="utf-8"?--> ><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> ><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head> ><!-- 2016-06-02 Thu 16:06 --> ><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> ><meta name="viewport" content="width=device-width, initial-scale=1"> ><title></title> ><meta name="generator" content="Org-mode"> ><meta name="author" content="Henrik Andersson"> ><style type="text/css"> > <!--/*--><![CDATA[/*><!--*/ > .title { text-align: center; > margin-bottom: .2em; } > .subtitle { text-align: center; > font-size: medium; > font-weight: bold; > margin-top:0; } > .todo { font-family: monospace; color: red; } > .done { font-family: monospace; color: green; } > .priority { font-family: monospace; color: orange; } > .tag { background-color: #eee; font-family: monospace; > padding: 2px; font-size: 80%; font-weight: normal; } > .timestamp { color: #bebebe; } > .timestamp-kwd { color: #5f9ea0; } > .org-right { margin-left: auto; margin-right: 0px; text-align: right; } > .org-left { margin-left: 0px; margin-right: auto; text-align: left; } > .org-center { margin-left: auto; margin-right: auto; text-align: center; } > .underline { text-decoration: underline; } > #postamble p, #preamble p { font-size: 90%; margin: .2em; } > p.verse { margin-left: 3%; } > pre { > border: 1px solid #ccc; > box-shadow: 3px 3px 3px #eee; > padding: 8pt; > font-family: monospace; > overflow: auto; > margin: 1.2em; > } > pre.src { > position: relative; > overflow: visible; > padding-top: 1.2em; > } > pre.src:before { > display: none; > position: absolute; > background-color: white; > top: -10px; > right: 10px; > padding: 3px; > border: 1px solid black; > } > pre.src:hover:before { display: inline;} > pre.src-sh:before { content: 'sh'; } > pre.src-bash:before { content: 'sh'; } > pre.src-emacs-lisp:before { content: 'Emacs Lisp'; } > pre.src-R:before { content: 'R'; } > pre.src-perl:before { content: 'Perl'; } > pre.src-java:before { content: 'Java'; } > pre.src-sql:before { content: 'SQL'; } > > table { border-collapse:collapse; } > caption.t-above { caption-side: top; } > caption.t-bottom { caption-side: bottom; } > td, th { vertical-align:top; } > th.org-right { text-align: center; } > th.org-left { text-align: center; } > th.org-center { text-align: center; } > td.org-right { text-align: right; } > td.org-left { text-align: left; } > td.org-center { text-align: center; } > dt { font-weight: bold; } > .footpara { display: inline; } > .footdef { margin-bottom: 1em; } > .figure { padding: 1em; } > .figure p { text-align: center; } > .inlinetask { > padding: 10px; > border: 2px solid gray; > margin: 10px; > background: #ffffcc; > } > #org-div-home-and-up > { text-align: right; font-size: 70%; white-space: nowrap; } > textarea { overflow-x: auto; } > .linenr { font-size: smaller } > .code-highlighted { background-color: #ffff00; } > .org-info-js_info-navigation { border-style: none; } > #org-info-js_console-label > { font-size: 10px; font-weight: bold; white-space: nowrap; } > .org-info-js_search-highlight > { background-color: #ffff00; color: #000000; font-weight: bold; } > /*]]>*/--> ></style> ><script type="text/javascript"> >/* >@licstart The following is the entire license notice for the >JavaScript code in this tag. > >Copyright (C) 2012-2013 Free Software Foundation, Inc. > >The JavaScript code in this tag is free software: you can >redistribute it and/or modify it under the terms of the GNU >General Public License (GNU GPL) as published by the Free Software >Foundation, either version 3 of the License, or (at your option) >any later version. The code is distributed WITHOUT ANY WARRANTY; >without even the implied warranty of MERCHANTABILITY or FITNESS >FOR A PARTICULAR PURPOSE. See the GNU GPL for more details. > >As additional permission under GNU GPL version 3 section 7, you >may distribute non-source (e.g., minimized or compacted) forms of >that code without the copy of the GNU GPL normally required by >section 4, provided you include this license notice and a URL >through which recipients can access the Corresponding Source. > > >@licend The above is the entire license notice >for the JavaScript code in this tag. >*/ ><!--/*--><![CDATA[/*><!--*/ > function CodeHighlightOn(elem, id) > { > var target = document.getElementById(id); > if(null != target) { > elem.cacheClassElem = elem.className; > elem.cacheClassTarget = target.className; > target.className = "code-highlighted"; > elem.className = "code-highlighted"; > } > } > function CodeHighlightOff(elem, id) > { > var target = document.getElementById(id); > if(elem.cacheClassElem) > elem.className = elem.cacheClassElem; > if(elem.cacheClassTarget) > target.className = elem.cacheClassTarget; > } >/*]]>*///--> ></script> ></head> ><body> ><div id="content"> ><div id="table-of-contents"> ><h2>Table of Contents</h2> ><div id="text-table-of-contents"> ><ul> ><li><a href="#orgheadline3">1. Configuration</a> ><ul> ><li><a href="#orgheadline1">1.1. Windows 7</a></li> ><li><a href="#orgheadline2">1.2. Windows 10</a></li> ></ul> ></li> ><li><a href="#orgheadline7">2. Tests</a> ><ul> ><li><a href="#orgheadline4">2.1. pdftocairo</a></li> ><li><a href="#orgheadline5">2.2. lpr</a></li> ><li><a href="#orgheadline6">2.3. evince</a></li> ></ul> ></li> ><li><a href="#orgheadline10">3. Result</a> ><ul> ><li><a href="#orgheadline8">3.1. Matrice</a></li> ><li><a href="#orgheadline9">3.2. Problems and conslusions</a></li> ></ul> ></li> ></ul> ></div> ></div> ><div id="outline-container-orgheadline3" class="outline-2"> ><h2 id="orgheadline3"><span class="section-number-2">1</span> Configuration</h2> ><div class="outline-text-2" id="text-1"> ></div><div id="outline-container-orgheadline1" class="outline-3"> ><h3 id="orgheadline1"><span class="section-number-3">1.1</span> Windows 7</h3> ><div class="outline-text-3" id="text-1-1"> ><p> >Windows 7 machine has the following print queues configured: ></p> > ><ul class="org-ul"> ><li>direct: HP LaserJet 500 color MFP M570dn UPD PS</li> ><li>printhost: HP Universal Printing PS</li> ></ul> ></div> ></div> > > ><div id="outline-container-orgheadline2" class="outline-3"> ><h3 id="orgheadline2"><span class="section-number-3">1.2</span> Windows 10</h3> ><div class="outline-text-3" id="text-1-2"> ><p> >Windows 10 machine has the follow print queues configured: ></p> > ><ul class="org-ul"> ><li>direct: HP LaserJet 500 color MFP M570 PCL6</li> ></ul> ></div> ></div> ></div> > ><div id="outline-container-orgheadline7" class="outline-2"> ><h2 id="orgheadline7"><span class="section-number-2">2</span> Tests</h2> ><div class="outline-text-2" id="text-2"> ><p> >Following tests has been carried out using ThinLinc 4.6.0 on RHEL 7. A >set of test pdf's were gathered and named a-l.pdf. ></p> ></div> > ><div id="outline-container-orgheadline4" class="outline-3"> ><h3 id="orgheadline4"><span class="section-number-3">2.1</span> pdftocairo</h3> ><div class="outline-text-3" id="text-2-1"> ><p> >Tests are performed using pdftocairo.exe printing each test pdf >on the windows workstations. ></p> ></div> ></div> > ><div id="outline-container-orgheadline5" class="outline-3"> ><h3 id="orgheadline5"><span class="section-number-3">2.2</span> lpr</h3> ><div class="outline-text-3" id="text-2-2"> ><p> >Tests are performed within a ThinLinc session. Should not differ from >the <i>pdftocairo</i> tests due to it is just transportnig the data to the >printer. ></p> ></div> ></div> > ><div id="outline-container-orgheadline6" class="outline-3"> ><h3 id="orgheadline6"><span class="section-number-3">2.3</span> evince</h3> ><div class="outline-text-3" id="text-2-3"> ><p> >Tests are performed within a ThinLinc session. Evince does things with >the data when printing, eg. goes through GNOME printing. ></p> ></div> ></div> ></div> > ><div id="outline-container-orgheadline10" class="outline-2"> ><h2 id="orgheadline10"><span class="section-number-2">3</span> Result</h2> ><div class="outline-text-2" id="text-3"> ></div><div id="outline-container-orgheadline8" class="outline-3"> ><h3 id="orgheadline8"><span class="section-number-3">3.1</span> Matrice</h3> ><div class="outline-text-3" id="text-3-1"> ><!-- This HTML table template is generated by emacs 25.0.94.1 --> ><table border="1"> > <tbody><tr> > <td align="left" valign="top"> > workstation > </td> > <td colspan="6" align="left" valign="top"> > > Windows 7 > > </td> > <td colspan="3" align="left" valign="top"> > > Windows 10 > > </td> > </tr> > <tr> > <td align="left" valign="top"> > printer > </td> > <td colspan="3" align="left" valign="top"> > > direct > > </td> > <td colspan="3" align="left" valign="top"> > > printhost > > </td> > <td colspan="3" align="left" valign="top"> > > direct > > </td> > </tr> > <tr> > <td align="left" valign="top"> > tests > </td> > <td align="left" valign="top"> > pdftocairo > </td> > <td align="left" valign="top"> > lpr > </td> > <td align="left" valign="top"> > evince > </td> > <td align="left" valign="top"> > pdftocairo > </td> > <td align="left" valign="top"> > lpr > </td> > <td align="left" valign="top"> > evince > </td> > <td align="left" valign="top"> > pdftocairo > </td> > <td align="left" valign="top"> > lpr > </td> > <td align="left" valign="top"> > evince > </td> > </tr> > <tr> > <td align="left" valign="top"> > a.pdf > </td> > <td align="left" valign="top"> > X > </td> > <td align="left" valign="top"> > X > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > X > </td> > </tr> > <tr> > <td align="left" valign="top"> > b.pdf > </td> > <td align="left" valign="top"> > X > </td> > <td align="left" valign="top"> > X > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > X > </td> > </tr> > <tr> > <td align="left" valign="top"> > c.pdf > </td> > <td align="left" valign="top"> > X > </td> > <td align="left" valign="top"> > X > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > X > </td> > </tr> > <tr> > <td align="left" valign="top"> > d.pdf > </td> > <td align="left" valign="top"> > X [1] > </td> > <td align="left" valign="top"> > X [1] > </td> > <td align="left" valign="top"> > X [1] > </td> > <td align="left" valign="top"> > X [7] > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > X > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > X > </td> > </tr> > <tr> > <td align="left" valign="top"> > e.pdf > </td> > <td align="left" valign="top"> > X [2] > </td> > <td align="left" valign="top"> > X [2] > </td> > <td align="left" valign="top"> > X [2][6] > </td> > <td align="left" valign="top"> > X [8] > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > X [8] > </td> > <td align="left" valign="top"> > X [8] > </td> > <td align="left" valign="top"> > X [8] > </td> > <td align="left" valign="top"> > X [3] > </td> > </tr> > <tr> > <td align="left" valign="top"> > f.pdf > </td> > <td align="left" valign="top"> > X > </td> > <td align="left" valign="top"> > X > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > X > </td> > </tr> > <tr> > <td align="left" valign="top"> > g.pdf > </td> > <td align="left" valign="top"> > X > </td> > <td align="left" valign="top"> > X > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > X > </td> > </tr> > <tr> > <td align="left" valign="top"> > h.pdf > </td> > <td align="left" valign="top"> > X > </td> > <td align="left" valign="top"> > X > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > X > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > X > </td> > <td align="left" valign="top"> > X [4] > </td> > </tr> > <tr> > <td align="left" valign="top"> > i.pdf > </td> > <td align="left" valign="top"> > X > </td> > <td align="left" valign="top"> > X > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > X > </td> > </tr> > <tr> > <td align="left" valign="top"> > j.pdf > </td> > <td align="left" valign="top"> > X > </td> > <td align="left" valign="top"> > X > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > X > </td> > </tr> > <tr> > <td align="left" valign="top"> > k.pdf > </td> > <td align="left" valign="top"> > X > </td> > <td align="left" valign="top"> > X > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > X > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > X > </td> > <td align="left" valign="top"> > X [4] > </td> > </tr> > <tr> > <td align="left" valign="top"> > l.pdf > </td> > <td align="left" valign="top"> > X [2][9] > </td> > <td align="left" valign="top"> > X [2][9] > </td> > <td align="left" valign="top"> > X [5][9] > </td> > <td align="left" valign="top"> > X [7][9] > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > X [5][9] > </td> > <td align="left" valign="top"> > X [7][9] > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > X [5][9] > </td> > </tr> > <tr> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > > </td> > <td align="left" valign="top"> > > </td> > </tr> ></tbody></table> ></div> ></div> > ><div id="outline-container-orgheadline9" class="outline-3"> ><h3 id="orgheadline9"><span class="section-number-3">3.2</span> Problems and conslusions</h3> ><div class="outline-text-3" id="text-3-2"> ><ol class="org-ol"> ><li>Gradients are not rendered correctly, might be the same problem >as 2. This happens when cairo leave the rasterization of graphics >to the printer.</li> > ><li>Looks like there is a rendering issue with gradients in >copmbination with mask / clipping operator. This happens when cairo >leaves the rasterization to the printer.</li> > ><li><p> >Only one layer rendered upper left cropped part. pdftocairo prints >following error to console: ></p> > ><pre class="example">_cairo_win32_printing_surface_paint(StrtchDIBits): The data area passed to a system call is too small >Internal Error: cairo error: out of memory<0a> ></pre> > ><p> >Found a fix in release notes of cairo 1.15.2 with the line: ></p> > ><pre class="example">-win32: fix crash from win32 surface's image size to small ></pre> > ><p> >Which sounded relevant and i tested to upgrade cairo which actually >solved the issue. ></p> > ><p> >I found the upstream commit >91f128bf7a1233a7fc2e164f95279987e32a3532 related to the realease >note, which was fairly small commit and tried to backport to 1.14.6 >and found out that this was already applied to 1.14.6. Even if it >was noticed in release notes for 1.15.2 :/. ></p></li> > ><li><p> >A blank paper, only seen when printing with evince. ></p> > ><p> >When testing printing evince lpd file, using pdftocairo (1.15.2), >the problem is fixed and output is in par with printing the test >pdf directly using pdftocairo. ></p></li> > ><li><p> >Whole image is rasterized at very low DPI. This is only reproduced >using evince which mangles the data in a way that upsets >pdftocairo. ></p> > ><p> >Tested using updated pdftocairo (cairo 1.15.2) which hits an >assertion instead of printing low res image, not good. ></p></li> > ><li>Invert color of b/w image in e.pdf. This is not cairo rasterization >which works correctly when used. ><ul class="org-ul"> ><li>We need to verify the above statement. Might be difference evince >on rhel7 vs rhel6</li> ></ul></li> > ><li>Cairo rasterizes parts of the image. Which seems to be a >combination of gradients and mask / clip operations.</li> > ><li>The "image" in e.pdf get fully ~90% rasterized</li> > ><li>Assertion using updated pdftocairo (1.15.2)</li> ></ol> ></div> ></div> ></div> ></div> ><div id="postamble" class="status"> ><p class="author">Author: Henrik Andersson</p> ><p class="date">Created: 2016-06-02 Thu 16:06</p> ><p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p> ></div> > > ></body></html>
<!--?xml version="1.0" encoding="utf-8"?--> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head> <!-- 2016-06-02 Thu 16:06 --> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <title></title> <meta name="generator" content="Org-mode"> <meta name="author" content="Henrik Andersson"> <style type="text/css"> <!--/*--><![CDATA[/*><!--*/ .title { text-align: center; margin-bottom: .2em; } .subtitle { text-align: center; font-size: medium; font-weight: bold; margin-top:0; } .todo { font-family: monospace; color: red; } .done { font-family: monospace; color: green; } .priority { font-family: monospace; color: orange; } .tag { background-color: #eee; font-family: monospace; padding: 2px; font-size: 80%; font-weight: normal; } .timestamp { color: #bebebe; } .timestamp-kwd { color: #5f9ea0; } .org-right { margin-left: auto; margin-right: 0px; text-align: right; } .org-left { margin-left: 0px; margin-right: auto; text-align: left; } .org-center { margin-left: auto; margin-right: auto; text-align: center; } .underline { text-decoration: underline; } #postamble p, #preamble p { font-size: 90%; margin: .2em; } p.verse { margin-left: 3%; } pre { border: 1px solid #ccc; box-shadow: 3px 3px 3px #eee; padding: 8pt; font-family: monospace; overflow: auto; margin: 1.2em; } pre.src { position: relative; overflow: visible; padding-top: 1.2em; } pre.src:before { display: none; position: absolute; background-color: white; top: -10px; right: 10px; padding: 3px; border: 1px solid black; } pre.src:hover:before { display: inline;} pre.src-sh:before { content: 'sh'; } pre.src-bash:before { content: 'sh'; } pre.src-emacs-lisp:before { content: 'Emacs Lisp'; } pre.src-R:before { content: 'R'; } pre.src-perl:before { content: 'Perl'; } pre.src-java:before { content: 'Java'; } pre.src-sql:before { content: 'SQL'; } table { border-collapse:collapse; } caption.t-above { caption-side: top; } caption.t-bottom { caption-side: bottom; } td, th { vertical-align:top; } th.org-right { text-align: center; } th.org-left { text-align: center; } th.org-center { text-align: center; } td.org-right { text-align: right; } td.org-left { text-align: left; } td.org-center { text-align: center; } dt { font-weight: bold; } .footpara { display: inline; } .footdef { margin-bottom: 1em; } .figure { padding: 1em; } .figure p { text-align: center; } .inlinetask { padding: 10px; border: 2px solid gray; margin: 10px; background: #ffffcc; } #org-div-home-and-up { text-align: right; font-size: 70%; white-space: nowrap; } textarea { overflow-x: auto; } .linenr { font-size: smaller } .code-highlighted { background-color: #ffff00; } .org-info-js_info-navigation { border-style: none; } #org-info-js_console-label { font-size: 10px; font-weight: bold; white-space: nowrap; } .org-info-js_search-highlight { background-color: #ffff00; color: #000000; font-weight: bold; } /*]]>*/--> </style> <script type="text/javascript"> /* @licstart The following is the entire license notice for the JavaScript code in this tag. Copyright (C) 2012-2013 Free Software Foundation, Inc. The JavaScript code in this tag is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License (GNU GPL) as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. The code is distributed WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU GPL for more details. As additional permission under GNU GPL version 3 section 7, you may distribute non-source (e.g., minimized or compacted) forms of that code without the copy of the GNU GPL normally required by section 4, provided you include this license notice and a URL through which recipients can access the Corresponding Source. @licend The above is the entire license notice for the JavaScript code in this tag. */ <!--/*--><![CDATA[/*><!--*/ function CodeHighlightOn(elem, id) { var target = document.getElementById(id); if(null != target) { elem.cacheClassElem = elem.className; elem.cacheClassTarget = target.className; target.className = "code-highlighted"; elem.className = "code-highlighted"; } } function CodeHighlightOff(elem, id) { var target = document.getElementById(id); if(elem.cacheClassElem) elem.className = elem.cacheClassElem; if(elem.cacheClassTarget) target.className = elem.cacheClassTarget; } /*]]>*///--> </script> </head> <body> <div id="content"> <div id="table-of-contents"> <h2>Table of Contents</h2> <div id="text-table-of-contents"> <ul> <li><a href="#orgheadline3">1. Configuration</a> <ul> <li><a href="#orgheadline1">1.1. Windows 7</a></li> <li><a href="#orgheadline2">1.2. Windows 10</a></li> </ul> </li> <li><a href="#orgheadline7">2. Tests</a> <ul> <li><a href="#orgheadline4">2.1. pdftocairo</a></li> <li><a href="#orgheadline5">2.2. lpr</a></li> <li><a href="#orgheadline6">2.3. evince</a></li> </ul> </li> <li><a href="#orgheadline10">3. Result</a> <ul> <li><a href="#orgheadline8">3.1. Matrice</a></li> <li><a href="#orgheadline9">3.2. Problems and conslusions</a></li> </ul> </li> </ul> </div> </div> <div id="outline-container-orgheadline3" class="outline-2"> <h2 id="orgheadline3"><span class="section-number-2">1</span> Configuration</h2> <div class="outline-text-2" id="text-1"> </div><div id="outline-container-orgheadline1" class="outline-3"> <h3 id="orgheadline1"><span class="section-number-3">1.1</span> Windows 7</h3> <div class="outline-text-3" id="text-1-1"> <p> Windows 7 machine has the following print queues configured: </p> <ul class="org-ul"> <li>direct: HP LaserJet 500 color MFP M570dn UPD PS</li> <li>printhost: HP Universal Printing PS</li> </ul> </div> </div> <div id="outline-container-orgheadline2" class="outline-3"> <h3 id="orgheadline2"><span class="section-number-3">1.2</span> Windows 10</h3> <div class="outline-text-3" id="text-1-2"> <p> Windows 10 machine has the follow print queues configured: </p> <ul class="org-ul"> <li>direct: HP LaserJet 500 color MFP M570 PCL6</li> </ul> </div> </div> </div> <div id="outline-container-orgheadline7" class="outline-2"> <h2 id="orgheadline7"><span class="section-number-2">2</span> Tests</h2> <div class="outline-text-2" id="text-2"> <p> Following tests has been carried out using ThinLinc 4.6.0 on RHEL 7. A set of test pdf's were gathered and named a-l.pdf. </p> </div> <div id="outline-container-orgheadline4" class="outline-3"> <h3 id="orgheadline4"><span class="section-number-3">2.1</span> pdftocairo</h3> <div class="outline-text-3" id="text-2-1"> <p> Tests are performed using pdftocairo.exe printing each test pdf on the windows workstations. </p> </div> </div> <div id="outline-container-orgheadline5" class="outline-3"> <h3 id="orgheadline5"><span class="section-number-3">2.2</span> lpr</h3> <div class="outline-text-3" id="text-2-2"> <p> Tests are performed within a ThinLinc session. Should not differ from the <i>pdftocairo</i> tests due to it is just transportnig the data to the printer. </p> </div> </div> <div id="outline-container-orgheadline6" class="outline-3"> <h3 id="orgheadline6"><span class="section-number-3">2.3</span> evince</h3> <div class="outline-text-3" id="text-2-3"> <p> Tests are performed within a ThinLinc session. Evince does things with the data when printing, eg. goes through GNOME printing. </p> </div> </div> </div> <div id="outline-container-orgheadline10" class="outline-2"> <h2 id="orgheadline10"><span class="section-number-2">3</span> Result</h2> <div class="outline-text-2" id="text-3"> </div><div id="outline-container-orgheadline8" class="outline-3"> <h3 id="orgheadline8"><span class="section-number-3">3.1</span> Matrice</h3> <div class="outline-text-3" id="text-3-1"> <!-- This HTML table template is generated by emacs 25.0.94.1 --> <table border="1"> <tbody><tr> <td align="left" valign="top"> workstation </td> <td colspan="6" align="left" valign="top"> Windows 7 </td> <td colspan="3" align="left" valign="top"> Windows 10 </td> </tr> <tr> <td align="left" valign="top"> printer </td> <td colspan="3" align="left" valign="top"> direct </td> <td colspan="3" align="left" valign="top"> printhost </td> <td colspan="3" align="left" valign="top"> direct </td> </tr> <tr> <td align="left" valign="top"> tests </td> <td align="left" valign="top"> pdftocairo </td> <td align="left" valign="top"> lpr </td> <td align="left" valign="top"> evince </td> <td align="left" valign="top"> pdftocairo </td> <td align="left" valign="top"> lpr </td> <td align="left" valign="top"> evince </td> <td align="left" valign="top"> pdftocairo </td> <td align="left" valign="top"> lpr </td> <td align="left" valign="top"> evince </td> </tr> <tr> <td align="left" valign="top"> a.pdf </td> <td align="left" valign="top"> X </td> <td align="left" valign="top"> X </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> X </td> </tr> <tr> <td align="left" valign="top"> b.pdf </td> <td align="left" valign="top"> X </td> <td align="left" valign="top"> X </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> X </td> </tr> <tr> <td align="left" valign="top"> c.pdf </td> <td align="left" valign="top"> X </td> <td align="left" valign="top"> X </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> X </td> </tr> <tr> <td align="left" valign="top"> d.pdf </td> <td align="left" valign="top"> X [1] </td> <td align="left" valign="top"> X [1] </td> <td align="left" valign="top"> X [1] </td> <td align="left" valign="top"> X [7] </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> X </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> X </td> </tr> <tr> <td align="left" valign="top"> e.pdf </td> <td align="left" valign="top"> X [2] </td> <td align="left" valign="top"> X [2] </td> <td align="left" valign="top"> X [2][6] </td> <td align="left" valign="top"> X [8] </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> X [8] </td> <td align="left" valign="top"> X [8] </td> <td align="left" valign="top"> X [8] </td> <td align="left" valign="top"> X [3] </td> </tr> <tr> <td align="left" valign="top"> f.pdf </td> <td align="left" valign="top"> X </td> <td align="left" valign="top"> X </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> X </td> </tr> <tr> <td align="left" valign="top"> g.pdf </td> <td align="left" valign="top"> X </td> <td align="left" valign="top"> X </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> X </td> </tr> <tr> <td align="left" valign="top"> h.pdf </td> <td align="left" valign="top"> X </td> <td align="left" valign="top"> X </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> X </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> X </td> <td align="left" valign="top"> X [4] </td> </tr> <tr> <td align="left" valign="top"> i.pdf </td> <td align="left" valign="top"> X </td> <td align="left" valign="top"> X </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> X </td> </tr> <tr> <td align="left" valign="top"> j.pdf </td> <td align="left" valign="top"> X </td> <td align="left" valign="top"> X </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> X </td> </tr> <tr> <td align="left" valign="top"> k.pdf </td> <td align="left" valign="top"> X </td> <td align="left" valign="top"> X </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> X </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> X </td> <td align="left" valign="top"> X [4] </td> </tr> <tr> <td align="left" valign="top"> l.pdf </td> <td align="left" valign="top"> X [2][9] </td> <td align="left" valign="top"> X [2][9] </td> <td align="left" valign="top"> X [5][9] </td> <td align="left" valign="top"> X [7][9] </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> X [5][9] </td> <td align="left" valign="top"> X [7][9] </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> X [5][9] </td> </tr> <tr> <td align="left" valign="top"> </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> </td> <td align="left" valign="top"> </td> </tr> </tbody></table> </div> </div> <div id="outline-container-orgheadline9" class="outline-3"> <h3 id="orgheadline9"><span class="section-number-3">3.2</span> Problems and conslusions</h3> <div class="outline-text-3" id="text-3-2"> <ol class="org-ol"> <li>Gradients are not rendered correctly, might be the same problem as 2. This happens when cairo leave the rasterization of graphics to the printer.</li> <li>Looks like there is a rendering issue with gradients in copmbination with mask / clipping operator. This happens when cairo leaves the rasterization to the printer.</li> <li><p> Only one layer rendered upper left cropped part. pdftocairo prints following error to console: </p> <pre class="example">_cairo_win32_printing_surface_paint(StrtchDIBits): The data area passed to a system call is too small Internal Error: cairo error: out of memory<0a> </pre> <p> Found a fix in release notes of cairo 1.15.2 with the line: </p> <pre class="example">-win32: fix crash from win32 surface's image size to small </pre> <p> Which sounded relevant and i tested to upgrade cairo which actually solved the issue. </p> <p> I found the upstream commit 91f128bf7a1233a7fc2e164f95279987e32a3532 related to the realease note, which was fairly small commit and tried to backport to 1.14.6 and found out that this was already applied to 1.14.6. Even if it was noticed in release notes for 1.15.2 :/. </p></li> <li><p> A blank paper, only seen when printing with evince. </p> <p> When testing printing evince lpd file, using pdftocairo (1.15.2), the problem is fixed and output is in par with printing the test pdf directly using pdftocairo. </p></li> <li><p> Whole image is rasterized at very low DPI. This is only reproduced using evince which mangles the data in a way that upsets pdftocairo. </p> <p> Tested using updated pdftocairo (cairo 1.15.2) which hits an assertion instead of printing low res image, not good. </p></li> <li>Invert color of b/w image in e.pdf. This is not cairo rasterization which works correctly when used. <ul class="org-ul"> <li>We need to verify the above statement. Might be difference evince on rhel7 vs rhel6</li> </ul></li> <li>Cairo rasterizes parts of the image. Which seems to be a combination of gradients and mask / clip operations.</li> <li>The "image" in e.pdf get fully ~90% rasterized</li> <li>Assertion using updated pdftocairo (1.15.2)</li> </ol> </div> </div> </div> </div> <div id="postamble" class="status"> <p class="author">Author: Henrik Andersson</p> <p class="date">Created: 2016-06-02 Thu 16:06</p> <p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p> </div> </body></html>
View Attachment As Raw
Actions:
View
Attachments on
bug 2776
:
704
|
706
| 707