I use Sketchup sometimes for non-professional stuff.
Therefore, I stick to the 2017 Make version with a series of plugins to do what I want to do. Basically, my only 'inconvenience' with this old Make version, and for which I did not find a decent solution via plugins, was the lack of support for importing vector graphics.
On Reddit, I found some 'traces' of a very old plugin to import SVG files (origin 2008, updated in 2013). However, it missed many SVG features. There were also some incompatibilities and dependencies that made it quite complex to install. More recently, Samuel Tallet (author of some great plugins on Sketchucation) removed some of these dependencies, and made it apparently also compatible, up to SU version 2024. But, the old deficiencies in terms of SVG features remained.
Because I had no solution for the import of 2D vector data with my old Sketchup version, I decided - a couple of months ago - to jump into this gap myself (only for personal use). I had to dive into Ruby coding, the Sketchup API and the SVG specifications. Quite an endeavor, but I finally succeeded to come up with something that works... At least for me ...
- I extended the original support for the limited set of SVG shapes (i.e. rectangles, and 'shapes' composed of lines and cubic beziers) to the full set of SVG geometry (i.e. addition of circles, ellipses, horizontal and vertical lines, polylines, polygons, as well as support for elliptical arcs and quadratic beziers, including the smooth variants of cubic and quadratic beziers).
- I added support for all types of transformations (translate, rotate, scale, X- and Y-skew), including combined transforms.
- I added support for fills and line colors in a more robust way.
- I added support for text, although this still faces a number of limitations (as I encounter problems to fully convert some SVG font attributes into equivalent 3D text objects in SU).
- I could substantially improve the import performance, especially for complex SVG files (often from many minutes to just some seconds).
Below are some examples. The first example shows a screenshot of 3 files in my 2D graphics editor (Affinity Designer). Inkscape is a popular - and open source - alternative. Such editors allow to create SVG files, can read multiple vector formats (e.g. DWG, DXF, PDF) and also support the conversion towards SVG.
The first example is a site plan, with lots of text (measurements) and line colors, the second is a garden plan with multiple color-filled shapes, and the last one is a more 'graphical object' (that demonstrates an 'inconsistency' between 2D and 3D design constraints - cf. below).
()
Next, you'll see screenshots of the corresponding SVG imports in Sketchup.
Due to the inherent differences between 2D and 3D modeling approaches, there are some caveats to take into account. The last 2 figures (the dragon) explain this. SVG works with lines and shapes. Lines ('strokes' in SVG) have a thickness. Shapes can be filled with color, but SVG shapes can also be put 'on top' of each other ('layered' and blended, like in a photo editor). However such layering is not possible when converting the 2D drawing into a 3D modeling tool like Sketchup. You'll end up with 'Z-fighting' of different shapes on the ground plane. All lines and shapes are properly imported, but they may overlap, which leads to the 'black dragon'. The overlap between the different shapes can be - manually ! - manipulated by selecting the shape in the outliner and cutting it out of the larger shape. You can 'visualize' the different composing shapes by using the X-Ray mode (cf the second dragon figure). Alternatively, this 'avoidance of shape overlap' can also be performed (and likely more efficiently) in a 2D editor, before exporting it to SVG, and importing it afterwards in Sketchup.
My 'extension' supports colored shape fills and lines, including transparency. Line widths (~edges) are (as always in SU) without stroke thickness.
The (optional) shape fill 'enhancements' in SVG (i.e. gradients, patterns, filters, masks) are, due to the lack of an equivalent, non-rasterized alternative for SU faces, always 'solid colors'.
If any such 'enhancements' would be required, this must be done (manually!!) in Sketchup via the import of bitmap files as material textures, after the SVG file is loaded. However, be aware that the rasterized nature of such textures, nullifies the benefits of the vectorial nature of SVG!!!
The 'extension' supports various color definitions (RGB, 3-digit and 6-digit hex, as well as the W3C color names). As Dan Rathbun pointed out above, this last color coding mechanism may not be supported anymore in SU2025. It should be possible to adapt the extension to translate these color names into equivalent RGB values, but this is currently not implemented, as I don't use SU2025. Thus, I also have no clue what may be the impact of the new PBR materials for my 'SVG Importer'...
As mentioned above, the support for texts is currently not 'perfect', due to inconsistencies between the way the SVG specification allows text formatting and the way SU's 3D text can be manipulated via the Sketchup Ruby API. However, if a 100% accurate import of the text elements (e.g. a detailed font design) is absolutely necessary, this can be achieved by 'translating the text into curves' with a 2D graphical editor. In this case, the text is handled like a regular 'SVG shape'. This will lead to a larger SVG file size. In case of lots of text, it might be easier to create the text directly in SU as well.
There is no documentation available for this 'personal extension'. I'm also not pretending that it is 'professional-grade' software. E.g. the only dialog box (to capture some parameters) is an old-fashioned (ugly) Sketchup UI.Inputbox. I had no need or intention to learn how to code HTML dialog boxes and how they interact with Sketchup...
I don't know your exact needs in terms of SVG import. But, if the above clarification of what I did, looks like a potential match, I have no objection to share it (without any guarrantee and/or liability). If so, please reach out to me via a PM on this forum.