Copy link to clipboard
Copied
Copy link to clipboard
Copied
Copy link to clipboard
Copied
Copy link to clipboard
Copied
Copy link to clipboard
Copied
Copy link to clipboard
Copied
Copy link to clipboard
Copied
You've been reported for abuse. If you are unable, or unwilling, to help keep your nasty remarks to yourself. This is a site for users helping users not users dis'ing users.
It might help you to learn how to answer a question on the Internet.
Copy link to clipboard
Copied
I've done some digging and it turns out there is a consequence for some files.
But it should always be possible to import it, even though it gets REALLY hard..
So after this warning, this is for the die-hards.
Import this file: (svg is just xml, which is text, so save this as a text file and rename to xxx.svg):
<svg>
<defs>
<mask id="mask2" x="0" y="0" width="100" height="100" >
<circle cx="25" cy="25" r="25" style="stroke:none; fill: #ffffff"/>
</mask>
</defs>
<rect x="1" y="1" width="100" height="100"
style="stroke: none; fill: #0000ff; mask: url(#mask2)"/>
</svg>
If you import this svg, into a graphics program, it should show up as a rectangle masked by a circle.
It does not in illustrator.
So far, I'm just restating the problem.. Now for a possible SOLUTION.
MASKS vs CLIP-PATHS
SVG supports both masking and clipping. As far as I can gather, one is seen as a
rastering filter, done at rendering time, which isn't imported. The other (clipping) is a mathmatical boolean operation, which should be imported.
Easy solution aside:
I found I can open the SVG in inkscape (free download) and save as EPS, the masked bits will become bitmap-fills.
But they will then not be editabe. If you want this you might want to convert the masking
to clip-paths by hand.
HOWEVER!!
If you import a file with clip-paths, illustator gets a little erratic.
I tried clipping in stead of masking the same file as above.
It didn't work in illustrator, but displayed fine in inkscape.
<svg>
<defs>
<clipPath id="mask2">
<circle cx="25" cy="25" r="25"/>
</clipPath>
</defs>
<rect x="1" y="1" width="100" height="100" style="stroke: none; fill: #0000ff; clip-path: url(#mask2)"/>
</svg>
Also you get the message about clippaths not surviving the round trip to tiny on import. (Same as masks)
Then I tried importing a actual path as clipping-path (not a circle, or other primitive)
I got the same message about clipping not surviving, but it DISPLAYS CORRECTLY IN ILLUSTRATOR.
When I looked at it in wireframe mode, both clippath and shape where there.
So the issue seems solved for paths, rather than primitve shapes.
Try and import this (I use Creative Cloud Illustrator version 17 - 32 bit):
<svg>
<defs>
<clipPath id="mask2">
<path d="M10,10 q60,60 100,0 q50,50 50,50 l40,0 l-40,40 l-100,-20"/>
</clipPath>
</defs>
<rect x="1" y="1" width="100" height="100" style="stroke: none; fill: #0000ff; clip-path: url(#mask2)"/>
</svg>
This is fortunate, because this is the exact subset of features I need for my project.
So, I figured, if it helps me, it might help somebody else.
I don't think it offers you an easy solution for importing the icons (except via EPS), but it might give you a few more options and a lot more insight into the inner workings of importing SVG in illustrator
and if they are REALLY important, I suggest this work-around:
-Break any image masks into primitive paths in InkScape
-Save as plain svg.
-Open the file in texteditor, rewrite the file to create clip-paths in stead of masks
-import in Illustator.
That seems like a lot of work (and it is) but you could script part of it.
Copy link to clipboard
Copied
A tangent, but here is my workaround for getting generic SVG artwork into Illustrator:
I lose have to re-key any text that was in the artwork because it doesn't retain fonts this way, but the art comes through fine without any issues with masking and such.
Enjoy!
Copy link to clipboard
Copied
OMG thanks a lot.