Thanks Zax for checking those in T2Laser! I need to start checking them in T2 as well but so far I've just been using BCL and DWG TrueView to test with. And, if Ralph keeps coming out with more updates I shouldn't hit the startup limit lol.
All of the files I've converted so far, where I didn't convert the lines and splines to any other objects will load in Autocad DWG TrueView and BCL which are the two programs I use to test with right now. The converted files will load in TrueView but not all of them will load into BCL. I suspect this might be due to how LwPolylines are read in BCL but that's only a guess. When a file fails to load in BCL it says index was out of the bounds of the array. If my suspicions are correct I think I have a solution for this.
The Arc and Circle converter still has a couple bugs in it as well but is nearly complete. Believe it or not, the trickiest part was not the arcs or circles, it was the lines lol.
From the PDF reference guide...
A path is composed of straight and curved line segments, which may connect to
one another or may be disconnected. A pair of segments are said to connect only
if they are defined consecutively, with the second segment starting where the first
one ends. Thus the order in which the segments of a path are defined is signifi-
cant. Nonconsecutive segments that meet or intersect fortuitously are not considered
This became apparent with one of my test files.
Within a path, you have sub paths and the sub paths have line or curves and they can be mixed. The problem comes in when you have 3 sides of a rectangle in one sub path and the other side in a separate sub path. The shapes inside a sub path are connected but sub paths are not considered connected to each other.
To convert these to LwPolylines, instead of lines, I have two options. 1. just convert the connected lines in the one sup path and draw the remaining line as a simple line, or 2. Take all of the lines for a single path and all of its sub paths, and apply some logic to find all of the lines that connect to each other. I went with option 2 because a lot of PDFs will have come from some converter which may or may not preserve the shapes the same as they were. Inkscape has shown this to be true and I imagine others will do the same.
I know this seems like a lot of fuss for nothing but I'd like to have the option to let the converter do most of the work for me so that I don't have as much work to do when I get into BCL. Obviously this is not an issue for T2 since it doesn't matter to T2 if it is made up of just lines and splines.
Ok, so do you guys want to wait for the text, paths, and images to all be coded or would you guys prefer to do a phased test approach? I can wrap up the path import code and give you guys the dll libraries to test just that or wait until I have text, paths, and images all coded up and then deliver all of that at once.