Wednesday, October 5, 2016

svg - Why do EPS (vector) file formats require a specified resolution?


SVG is also a vector graphics file format but I've never been requested for resolution choice when using Matlab or Inkscape. EPS however has these options. Why? If both are vector graphics formats, neither should need it, correct?



Edit: Here is the request from inkscape for saving .eps files under resolution for rasterization (dpi)


enter image description here


But I don't want to rasterize my image. I want it to stay as a vector graphic.


Similarly as I mentioned in the comments, I can save .eps files in matlab using print -depsc2 -r300 filename where -r300 is the dpi resolution. Why do I need this argument?


Thank you.



Answer



The key word here is rasterization.


EPS is customarily a flat file format. Flat File meaning objects are either 100% opaque or 100% transparent -- there's no in between. This means if you use raster effects such as soft shadows, feathering, glows, etc. the only way to maintain that appearance is via raster images.


All printers only print raster data. When you print vector art it has to pass through a Raster Image Processor (RIP). When the RIP sees art with the shadows and glows, it queries the print driver and asks for the resolution of the printer then the RIP rasterizes these effects at that resolution.


If you are not printing and only saving vector art with these shadows and glows, the application needs to know at what resolution you want rasterization to occur. It can't guess because it's a dumb machine which only does what its told. Most vector applications do the rasterization "on-the-fly" when saving to a flat file format such as EPS. So the app is giving you the opportunity to tell it what you want rather than just defaulting to some predetermined setting.



This is why you are asked for a resolution when saving to EPS.


Make no mistake, if you are using soft-edges effects like glows and shadows you are generating raster elements when saving to the EPS format. Any time anything needs to be "flattened" there is the possibility of introducing embedded raster images into a flat file format. So, transparency settings, gradients, blending modes, shadows, glows, etc may all utilize the resolution setting.


If you are not using such soft-edge objects, then the resolution is just there for times when it is needed. It will have no effect on actual hard-edged vector art without glows and shadows, etc. when saving. Vector data is saved as vector data, it's only when you've introduced the objects which need flattening that the resolution option is needed.


No comments:

Post a Comment

technique - How credible is wikipedia?

I understand that this question relates more to wikipedia than it does writing but... If I was going to use wikipedia for a source for a res...