Why the difference? (File issue) Fill rule Corel

They are defined to be empty in the SVG but the GFUI interprets them incorrectly. There are two ways of defining a hole in SVG. The default is fill-rule:nonezero which is a complicated way of saying the direction of the path (clockwise / anti-clockwise) known as the winding order specifies whether it is a hole or an island. The other way is fill-rule:evenodd which is specified as an attribute in the SVG files @kittski is having problems with.

 <svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" width="8.5in" 
   height="11in" version="1.1" style="shape-rendering:geometricPrecision;
   text-rendering:geometricPrecision; image-rendering:optimizeQuality; 
   fill-rule:evenodd;  clip-rule:evenodd" viewBox="0 0 8500 11000" 
   xmlns:xlink="http://www.w3.org/1999/xlink">

That specifies the winding order is irrelevant, the nesting order determines if a path loop defines a hole or an island.

The text is inside the rectangles so it should be holes. The inside of the O’s, A’s, P’s and B’s, etc is inside the hole which is the letter, so it should be interpreted as an island. If the number of boundaries you need to cross to get to the outside is odd then it is a fill, else it is a hole.

If I remove the fillrule:oddeven attribute from the original file then it displays in InkScape just the same as the GFUI proving that the GFUI ignores that attribute, which is part of the SVG standard.

9 Likes