<html>
<body>
<div style="font-family: Verdana, Arial, Helvetica, Sans-Serif;">
<table bgcolor="#f9f3c9" width="100%" cellpadding="8" style="border: 1px #c9c399 solid;">
<tr>
<td>
This is an automatically generated e-mail. To reply, visit:
<a href="http://git.reviewboard.kde.org/r/102716/">http://git.reviewboard.kde.org/r/102716/</a>
</td>
</tr>
</table>
<br />
<pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">I have run cstester on the test documents. Here is the result:
- change of object position
- change of z order
- change of text size
I have uploaded the files to
http://www.zagge.de/anchor/emf/
There is a info.txt file describing the problems found in different files.
It also contains one file that looks better now then before.
</pre>
<br />
<p>- Thorsten</p>
<br />
<p>On September 27th, 2011, 12:14 p.m., Inge Wallin wrote:</p>
<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="8" style="background-image: url('http://git.reviewboard.kde.org/media/rb/images/review_request_box_top_bg.png'); background-position: left top; background-repeat: repeat-x; border: 1px black solid;">
<tr>
<td>
<div>Review request for Calligra and Thorsten Zachmann.</div>
<div>By Inge Wallin.</div>
<p style="color: grey;"><i>Updated Sept. 27, 2011, 12:14 p.m.</i></p>
<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Description </h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
<tr>
<td>
<pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">This patch does two things:
- It implements the concept of the Playback Device Context into libemf
- It contains a start of an EMFPLUS parser.
The device context is a struct of data that is kept during the playback of an EMF metafile. It contains graphics state variables like current colors (text, background, foreground), current brush, pen, raster operation, etc as well as some bigger things. Previously all this was kept in the QPainter backend that is used to paint the content of the EMF to a QPaintDevice.
With the new explicit device context, that is kept by the parser, we get two advantages:
1. It is much easier to write new backends, so e.g. a karbon import filter for EMF will be almost trivial
2. We can implement EMFPLUS, which is the next generation EMF from Microsoft, since EMFPLUS demands transfer of device contexts.
This patch is tested in every commit along the way, but only on a limited set of documents, by hand by me. the reason for this commit request is that Zagge promised to make a big cstester run if I put it up for review. I would like to merge this patch on thursday at the latest, since the tagging of beta2 is on friday.
The new EMFPLUS parser is still work in progress and not called yet, so there is no real need to review that.</pre>
</td>
</tr>
</table>
<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Testing </h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
<tr>
<td>
<pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">Testing all commits with a limited set of test files that I keep.</pre>
</td>
</tr>
</table>
<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Diffs</b> </h1>
<ul style="margin-left: 3em; padding-left: 0;">
<li>plugins/vectorshape/CMakeLists.txt <span style="color: grey">(da25dbb)</span></li>
<li>plugins/vectorshape/VectorShape.cpp <span style="color: grey">(c14e6a7)</span></li>
<li>plugins/vectorshape/libemf/CMakeLists.txt <span style="color: grey">(7824052)</span></li>
<li>plugins/vectorshape/libemf/EmfAbstractBackend.h <span style="color: grey">(PRE-CREATION)</span></li>
<li>plugins/vectorshape/libemf/EmfAbstractBackend.cpp <span style="color: grey">(PRE-CREATION)</span></li>
<li>plugins/vectorshape/libemf/EmfDebugBackend.h <span style="color: grey">(PRE-CREATION)</span></li>
<li>plugins/vectorshape/libemf/EmfDebugBackend.cpp <span style="color: grey">(PRE-CREATION)</span></li>
<li>plugins/vectorshape/libemf/EmfDeviceContext.h <span style="color: grey">(PRE-CREATION)</span></li>
<li>plugins/vectorshape/libemf/EmfDeviceContext.cpp <span style="color: grey">(PRE-CREATION)</span></li>
<li>plugins/vectorshape/libemf/EmfEnums.h <span style="color: grey">(1b15344)</span></li>
<li>plugins/vectorshape/libemf/EmfOutput.h <span style="color: grey">(7b247af)</span></li>
<li>plugins/vectorshape/libemf/EmfOutput.cpp <span style="color: grey">(df3332a)</span></li>
<li>plugins/vectorshape/libemf/EmfOutputDebugStrategy.h <span style="color: grey">(af3dc21)</span></li>
<li>plugins/vectorshape/libemf/EmfOutputDebugStrategy.cpp <span style="color: grey">(4f1d87c)</span></li>
<li>plugins/vectorshape/libemf/EmfOutputPainterStrategy.h <span style="color: grey">(8e37d42)</span></li>
<li>plugins/vectorshape/libemf/EmfOutputPainterStrategy.cpp <span style="color: grey">(fcf6822)</span></li>
<li>plugins/vectorshape/libemf/EmfPainterBackend.h <span style="color: grey">(PRE-CREATION)</span></li>
<li>plugins/vectorshape/libemf/EmfPainterBackend.cpp <span style="color: grey">(PRE-CREATION)</span></li>
<li>plugins/vectorshape/libemf/EmfParser.h <span style="color: grey">(f376dc2)</span></li>
<li>plugins/vectorshape/libemf/EmfParser.cpp <span style="color: grey">(a8d54fa)</span></li>
<li>plugins/vectorshape/libemf/EmfplusDeviceContext.h <span style="color: grey">(PRE-CREATION)</span></li>
<li>plugins/vectorshape/libemf/EmfplusDeviceContext.cpp <span style="color: grey">(PRE-CREATION)</span></li>
<li>plugins/vectorshape/libemf/EmfplusEnums.h <span style="color: grey">(PRE-CREATION)</span></li>
<li>plugins/vectorshape/libemf/EmfplusParser.h <span style="color: grey">(PRE-CREATION)</span></li>
<li>plugins/vectorshape/libemf/EmfplusParser.cpp <span style="color: grey">(PRE-CREATION)</span></li>
<li>plugins/vectorshape/libemf/TODO <span style="color: grey">(cde117e)</span></li>
</ul>
<p><a href="http://git.reviewboard.kde.org/r/102716/diff/" style="margin-left: 3em;">View Diff</a></p>
</td>
</tr>
</table>
</div>
</body>
</html>