Date: prev next · Thread: first prev next last
2017 Archives by date, by thread · List index


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)


Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.