Why the difference? (File issue) Fill rule Corel

It’s not a question of it not handling SVGs as long as the requirements for the interface to interpret the engraving are met, and those requirements for vector engraves are that islands inside of the fill HAVE to be empty in order not to be engraved.

Whatever CorelDraw is doing to the SVG, those parts are not empty. They look empty but they are not. Opening the CorelDraw SVG in Illustrator shows the fill. Illustrator empties them when you process a file through subtraction. Inkscape empties them. So the problem here is with how CorelDraw is treating that function. They are not really empty.

Maybe changing the path direction will fix it or not - I don’t know. I think you are the first person to try to use a CorelDraw created SVG directly in the interface, so this is a real voyage of discovery for everyone.

Rather than see a lot of folks be disappointed when they can’t immediately use their CorelDraw SVG files for engraving complex images, we might want to just try to figure out how to make it work. Maybe the CorelDraw created engraving files will need to be loaded as PDF. That’s easy enough to do. And if there’s no engraving, the interface seems to handle the Strokes and Cutting just fine in the CorelDraw SVGs.

Oh - forgot to mention this earlier…there is another way to deal with it …you could always convert the image to a raster, embed it in the file, and handle the engrave that way. That also works extremely well.

Anyway, those are just some options for you to try. If they don’t work, maybe someone who is more familiar with CorelDraw can come up with something.

we should also be careful to not presume which of the multiple design programs as well as GFUI are actually interpreting the standard correctly. if any of them are not following the standards strictly, then there’s something that can blow up when you move between them.

3 Likes

So, like I said, I’ve been using Corel for ages…lol. To be honest, the first time I heard of an SVG file is here in this forum to use with the Glowforge as my lasers print straight from Corel. Anytime I try to import an SVG into CD, it does not come in properly either. It’s listed in the importable/exportable files list but doesn’t seem to like it very much…
I would definitely save what ever file as a PDF to send to the Glowforge.

~edit~ @dan later comments that this would not be advisable for the first choice. SVGs have had more testing done and would be a better choice.~~~

Convert any text to object and no fills. PDF can open up perfectly back into Corel if you need to make changes.

3 Likes

Ahhhh! Thanks for the verification that it can work. :slightly_smiling_face:

Well, I assume it will work…lol. Dont have a :glowforge: to actually verify :stuck_out_tongue_closed_eyes:

2 Likes

True! (At least it’s something to try…) :smile:

Most of my work is in Corel to SVG to GFUI. I don’t often filter them through Inkscape. On some of my computers I don’t have Corel so it’s Inkscape or AI (probably in that order). I’ve been using it since forever so I’m more used to CD but the kids are AI-ers and class is Inkscape for uniformity across the students. So I had to be multi-lingual :smiling_face:

This is a GFUI issue with how they’re handling SVG - just happens to be CD but it’s years worth since folks have recreated it with some pretty old versions. I’d expect they’ll fix it. It’s not like taking DXF off the list because SVG is pretty central to their marketing position and CD is pretty prevalent in the education space.

I don’t import SVGs. I just use File|Open. Haven’t noticed any issues (but I do have issues sometimes with DXF files🙁).

I do make sure I save my files in whatever program as SVG, not Inkscape SVG or compressed SVG - even in Inkscape.

3 Likes

Its been the ones posted in here mainly…I assume many are from Inkscape…

Do you have a method for handling un-engraved areas in the center of a filled area? (And if so, how are you pulling it off? Is there a setting we’re missing somewhere?)

Oh wow. Supporting both winding rules (even-odd and non-zero) is super important. No SVG (or PDF, or Postscript, etc.) implementation can get by with only supporting one of them. If this is indeed the problem, Glowforge needs to fix this ASAP!

6 Likes

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

@smcgathyfay FWIW, I’ve had a few issues with Inkscape SVG’s here too. I can tell you it’s not the norm though as I have no issues with the vast majority of SVG files in general. I just open them directly vs importing them. I didn’t use them much when just creating graphics for myself, but once I got into selling prints, shirts and such, it was one of the few universal file types the printers asked for so I just got into the habit of saving a SVG version of my work.

2 Likes

@palmercr Thanks for the explanation, it really helps me understand what is happening. Without your efforts, I don’t think we would have figured it out. Although I would have rather not have spent the 10 hours or so working on my files trying to figure out what I was doing wrong, it was worth the learning experience :slight_smile:

7 Likes

I love solving mysteries and I now know a lot more about SVG files than I did last week. I found a great Python library called svgpathtools that allowed me to break up the compound paths and display each loop.

10 Likes

Great thread - filing some bugs out of this for the team to follow up on.

We have a lot more test mileage on SVGs than PDFs, so while this might work, I would use it as a backup and not a primary approach.

3 Likes

We had much better success using pdfs created with that software than the SVG files. Much cleaner prints from the pdfs.

1 Like

Good Day, the nice thing about standards is you have so many to choose from…

2 Likes

Not sure of your point. GF chose to use SVG, which has a W3C standard, but don’t implement the full SVG rules.

Not meant to offend, it’s just my joke that’s I’ve been running since the 80’s. It’s meant to point out the moving target we have to deal with in terms of standards. And the fact like its trying to shoot/hit a moving target…

1 Like