ANN: ongoing emf+ parser & rendering rework
Armin Le Grand
armin_le_grand at me.com
Tue Aug 22 13:30:04 UTC 2017
Hiho,
here are some cleanup start points:
- m_bUseCanvas: no longer needed, no longetr interesting from outside
Metafile
- ImplPlayWithRenderer: should be removed. Adding a warning in
Metafile::Play for comments with GDIPLUS which guides to use primitive
renderer for better handling would be nice to add
- MtfRenderer: The hard part. com\sun\star\rendering\MtfRenderer.idl and
com\sun\star\rendering\MtfRenderer.idl and their should be removed. It's
not an official API and should be safe to remove
- there may be more as consequence of these...as always ;-)
Of course some UnitTests would be nice, too, best with EMF+ test data
files which make use of the new stuff.
As Thorsten already stated: Help much appreciated!
Regards,
Armin (alg)
Am 22.08.2017 um 12:48 schrieb Thorsten Behrens:
> I wrote:
>> Next steps (again, help much appreciated!):
>>
>> - add more GraphicPrimitive generators, complete up to a state that
>> the filter at least covers what the current direct canvas renderer
>> delivers:
>> * clip regions
>> * text rendering - it's parsed, but graphic primitive generation is
>> missing
>> * gradients/hatches
>>
> That's now done to a point where we're ~on par with the old renderer's
> functionality - thx to Patrick, Noel and Armin for all the nice work!
>
>> - once this works, cut over to new impl, bin the old code in cppcanvas
>> (there's sadly a small amount of duplicate code now in the parsers)
>> - iteratively expand, to cover near-100% of EMF+ (mostly lacking around
>> gradients & effects):
>> * more complex fill types like bitmaps/tiles
>> * path gradient
>> * xor & stuff
>>
> That cut-over has now happened with
>
> https://cgit.freedesktop.org/libreoffice/core/commit/?id=ebc11ae0b132eefd3b1b1a837a8d0ad3ba73b460
>
> , also killing the functionality to compare the two renderers - if you
> still need that, it's a rather smallish revert for now.
>
> Next up is cleansing the old renderer under cppcanvas, I suspect
> there's some easy wins there for easy hackers. :)
>
> Cheers,
>
> -- Thorsten
--
ALG (PGP Key: EE1C 4B3F E751 D8BC C485 DEC1 3C59 F953 D81C F4A2)
More information about the LibreOffice
mailing list