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)
_______________________________________________
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice