Photoshop: Extract Asset to SVG w/vector Illustrator file doesn't yield scalable/vector SVG

  • 3
  • Idea
  • Updated 2 years ago
  • Planned
  • (Edited)
Hey Team,

I was looking forward to the new Extract Asset feature of Photoshop CC 2014.2.0 for SVG extraction but I've run into some unexpected results during testing that I feel limit the potential of this feature.

Steps:

1. Create a simple vector shape in Ai
2. Place Linked Ai file into Photoshop
3. Extract this newly placed asset via Extract Assets to SVG

Actual Result:

The resulting SVG file does not appear to be a scalable asset (a strong attribute of this file type). Instead the extracted asset is a rasterized version of the original vector shape created in Ai.

Expected Result:

A scaleable SVG asset.

Given that the image was placed as a scalable vector asset in the form of a scalable container file (Ai), I would expect this to be exported as an SVG that possesses scalable vector attributes.

If there's something I'm missing or examples are needed, just give a shout.

Thanks!
Photo of Josh Kopinski

Josh Kopinski

  • 18 Posts
  • 3 Reply Likes

Posted 5 years ago

  • 3
Photo of Chris Cox

Chris Cox

  • 20280 Posts
  • 842 Reply Likes
Yes, because once the AI file is placed in Photoshop, the result is a raster/image.
Photoshop cannot see inside the AI file to all the vector data, Photoshop can only rasterize the PDF content of the AI file to raster data.

Expecting SVG output from the AI smart object is like expecting to extract the eggs used in baking a cake.
Photo of Josh Kopinski

Josh Kopinski

  • 18 Posts
  • 3 Reply Likes
Hey Chris,

Thanks for chiming in.

Have a look at the attached screenshot.

The Ai file contains a 25 px vector star shape.

When I Place it in a square 1000px Photoshop document, it is placed at it's 25 px size as expected.

After I commit the placement, I can scale it up 3000% and beyond and it's still not degrading. Instead it remains sharp, scalable and vector-like.

So in some way, to me it seems that either through resampling or something else, Photoshop is able to see the vector information within the Ai file after it's placed.

See what I mean?

Cheers -

PS - I tried to upload a zip of the working files, but I'm limited to images only.
Photo of Chris Cox

Chris Cox

  • 20280 Posts
  • 842 Reply Likes
Yes, but Photoshop has no way to know what the vector data is inside the AI file. Photoshop can only see the rasterized data (which actually comes from the PDF data saved in the file, not the AI data). Photoshop can rasterize the AI file at any size, but Photoshop cannot see inside the AI file to extract the vector data.
Photo of Josh Kopinski

Josh Kopinski

  • 18 Posts
  • 3 Reply Likes
"Expecting SVG output from the AI smart object is like expecting to extract the eggs used in baking a cake."

Haha, nice - I just noticed you revised your post and added the analogy.

But still, have a look at my example above. Using your baking analogy, I *am* effectively taking eggs out of a cake in their whole form and manipulating them after they're baked.

The star shape is fully scalable and behaves as a vector asset would even after it's placed. So PS must be able to read the vector data in some way after the fact.
Photo of Chris Cox

Chris Cox

  • 20280 Posts
  • 842 Reply Likes
Yeah, sometimes the perfect analogy comes after you write...

No, you're using different sizes of cake, and never actually seeing the eggs, because they're already baked in.

No, PS cannot read the vector data, it can only rasterize some of the data.
Photo of Josh Kopinski

Josh Kopinski

  • 18 Posts
  • 3 Reply Likes
Got it, thanks for the explanation.
Photo of Josh Kopinski

Josh Kopinski

  • 18 Posts
  • 3 Reply Likes
Ok fair enough. So on a technical level, this isn't a problem/bug. But it's problematic from a practical standpoint for an end user.

Hopefully a Product Manager or Researcher will have a read on this thread at some point and see the value in what the expected results spell out in the OP.

One of the main reasons to create vector assets is for scalability. When that's lost through a feature set that's intended to improve workflow, there's somewhat of a hurdle that's created along the way that takes away from the benefit.

It's also a bit unclear to an end user when Extract Assets has an option for SVG exporting. The file type is even named, "scalable" vector graphic. When exporting to an SVG, I'd expect scalability - makes sense right?

It would be helpful, and more useful if there was a way to retain the vector information and make it useable in Photoshop.

In general Smart Objects are great, but the fact that they get rasterized limits their potential - especially with the ever increasing need for vector assets that we can scale for the wide array of displays that we design for today.

Vector-friendly instances, revised Smart Objects, or something along these lines would be a welcomed improvement, especially for UI designers.

Anyways, keep up the great work - I'm looking forward to seeing how things progress.
Photo of Chris Cox

Chris Cox

  • 20280 Posts
  • 842 Reply Likes
The problem is, that to read the illustrator vector data, Photoshop would have to include all of Illustrator (minus the UI) as part of Photoshop, and keep it up to date to read new Illustrator data.

SVG can also include just raster data.
Photo of Josh Kopinski

Josh Kopinski

  • 18 Posts
  • 3 Reply Likes
Understandable on the Ai comment.

Slightly off topic from the OP, but also related. The limitation I'm referring to also happens with natively created Smart Objects straight from Photoshop (excluding Ai from the workflow entirely).

There are a lot of cases where it would be valuable to have a reusable asset, such as what a Smart Object is, and at the same time retain it's scalability without degrading.

Maybe it's a revised SO. Could be a vector friendly instance, but something along these lines would be helpful.

As far as SVG including raster data, true story. But a large part of their appeal is their scaleability. When they lose that characteristic, might as well just go with something that has better cross platform support.
Photo of Stephen Nielson

Stephen Nielson, Group Product Manager

  • 31 Posts
  • 15 Reply Likes
Hi Josh,

Yes, I totally understand the situation and I agree we should ideally support this scenario. As Chris points out, this is going to be a bit tricky. We are looking into ways to support this. In the meantime, the best thing to do would be to copy/paste from Illustrator to Photoshop as a Shape or Path, and then you can export it out using Extract Assets and get a truly scalable SVG.
Photo of Jeffrey Tranberry

Jeffrey Tranberry, Sr. Product Manager, Digital Imaging

  • 15434 Posts
  • 2278 Reply Likes
Official Response
Flipped topic to a feature request per Stephen:

"I agree we should ideally support this scenario. As Chris points out, this is going to be a bit tricky. We are looking into ways to support this. In the meantime, the best thing to do would be to copy/paste from Illustrator to Photoshop as a Shape or Path, and then you can export it out using Extract Assets and get a truly scalable SVG."
Photo of Divya Manian

Divya Manian, Employee

  • 82 Posts
  • 9 Reply Likes
Official Response
Just to chime in to this thread, we have investigated how to enable this in Extract Assets dialog, but it does look like we need to do more work to expose it in a way that would work. So it is planned but it would take some time and pulling together of a lot of engineers :) 
Photo of Josh Kopinski

Josh Kopinski

  • 18 Posts
  • 3 Reply Likes
Hey PS Crew,

I read these replies shortly after they were posted, but am just now getting a chance to say thanks for looking into things!

Thanks + Cheers!

Josh
Photo of Dave Mozdzanowski

Dave Mozdzanowski

  • 24 Posts
  • 1 Reply Like
2 years later, any update with this?