EtheaDev / SVGIconImageList

Three engines to render SVG (Delphi Image32, Skia4Delphi, Direct2D wrapper) and four components to simplify use of SVG images (resize, fixedcolor, grayscale...)
Apache License 2.0
327 stars 96 forks source link

Replace MSXML with non-caching, forward-only parser #96

Closed pyscripter closed 4 years ago

pyscripter commented 4 years ago

See https://en.delphipraxis.net/topic/3381-xml-parsing-and-processing/ and https://docs.microsoft.com/en-us/previous-versions/windows/desktop/ms753140(v=vs.85)

Sax and XMLite are much faster and memory efficient than DOM parsers. Read the above link about the comparison of pull and push parsers. Pull parsers such as XMLLite are much easier to work with and just as fast as SAX. XMLLite has been available on Windows since Windows XP.

Direct2D svg support is using XMLLite. There is a very good wrapper of XMLLite at https://github.com/the-Arioch/Delphi-XmlLite.