MantisBT - NetSurf
View Issue Details
0002878NetSurfRISC OS-specificpublic2024-06-21 15:002024-06-21 16:39
ReporterClive Semmens 
Assigned To 
PrioritynormalSeverityminorReproducibilityalways
StatusnewResolutionopen 
PlatformOSOS Version
Product Version 
Target VersionFixed in Version 
Fixed in CI build #
Reported in CI build #
URL of problem page
Summary0002878: Even/odd winding in SVG files rendered as NonZero
DescriptionHoles in filled paths are rendered correctly only if the winding is NonZero - see the Drawfile in EvenOdd.zip and the exactly equivalent SVG file, which render correctly on other platforms, but differently from the Drawfile on NetSurf.
TagsNo tags attached.
Attached Fileszip EvenOdd.zip (1,049) 2024-06-21 15:00
https://bugs.netsurf-browser.org/mantis/file_download.php?file_id=745&type=bug

Notes
(0002463)
Clive Semmens   
2024-06-21 16:37   
I could have been clearer in the description. The Drawfile contains two paths, identical except that one has even/odd winding, and the other has nonzero winding. Since the outline and the path both wind in the same direction, the nonzero one should have a filled hole, but the even/odd one should have an unfilled hole. This shows correctly when NetSurf displays the Drawfile, but incorrectly when it displays the SVG version of it. It's not the conversion to SVG that's wrong - the SVG file displays correctly on other platforms.
(0002464)
Clive Semmens   
2024-06-21 16:39   
This has a major effect on Acorn fonts which often have to be converted to path to be exported as SVG for other platforms - Acorn fonts use even/odd winding, and the direction of winding of paths around holes is often pretty random.

Issue History
2024-06-21 15:00Clive SemmensNew Issue
2024-06-21 15:00Clive SemmensFile Added: EvenOdd.zip
2024-06-21 16:37Clive SemmensNote Added: 0002463
2024-06-21 16:39Clive SemmensNote Added: 0002464