Link to home
Start Free TrialLog in
Avatar of NDennisV
NDennisVFlag for United States of America

asked on

Convet PNG file to SVG file?

Visual Studio 2012 - C# - Winforms

Does anyone know how to convert a png file to a sgv file?

Or are there any third party controls that can do this?

Thanks
Avatar of Ess Kay
Ess Kay
Flag of United States of America image

You can call the command-line version of incscape to do this:

http://harriyott.com/2008/05/converting-svg-images-to-png-in-c.aspx

Also there is a C# SVG rendering engine, primarily designed to allow SVG files to be used on the web on codeplex that might suit your needs if that is your problem:

Original Project
http://www.codeplex.com/svg

Fork with fixes and more activity: (added 7/2013)
https://github.com/vvvv/SVG
Avatar of NDennisV

ASKER

I need it the other way around - Plenty of ways to turn SVG's into PNG's but not turn PNG's into SVG's.
Check out the SVG framework in C# and an SVG-GDI+ bridge project.

From the above web page...

The SvgGdi bridge is a set of classes that use SvgNet to translate between SVG and GDI+. What this means is that any code that uses GDI+ to draw graphics can easily output SVG as well, simply by plugging in the SvgGraphics object. This object is exactly the same as a regular .NET Graphics object, but creates an SVG tree. Even things like hatched fills and line anchors are implemented.





Source: stackoverflow.com/questions/1525421/drawing-svg-in-net-c
Thank you - I will check it out tomorrow
stackoverflow.com/questions/1525421/drawing-svg-in-net-c

leads me to https://github.com/vvvv/SVG

which led me to http://www.oss-marketplace.com/index.php/downloads-mainmenu-63/Inkscape/Entwicklerversionen/

Where I downloaded the source code but it is all about rendering on the web and not Winforms.
no, the codeproject link on top of the comment Titled: "SVG framework in C# and an SVG-GDI+ bridge project."
The project is from 2003 which concerns me.

I downloaded the source and the demo project and a library is missing: AxSVGACTIVEXLib so it will not run.

Reading the help I do not see anything about converting from a PNG to a SVG. It's all about SVG only.

Thanks
from what I see, you can use a png instead of BMP supplied with the test project

as for the missing file, it may be in the project's original website

www.riskcare.net/SvgNet
I can't access it from my network to confirm
www.riskcare.net/SvgNet is no longer a valid web site.

I found the library on a Chinese site but I don't know if I should trust it.

I do not see anything about converting bmp to SVG's. The only thing I can find are Icon files that are converted to bmp's.

Thanks
if its just a library, it cant harm you if you run Windows Vista or newer.



if it tries to change system files, you will get the 'Do you want to continue' message
Yes, but I do not see where it converts anything to SVG's except perhaps an Icon file.
ASKER CERTIFIED SOLUTION
Avatar of Ess Kay
Ess Kay
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
SVG files are vector graphic files, PNG files are raster files. I would say that there is no easy way to automatically convert on to another in C# or another language.


Alternatively you can check the list here of softwares which run the conversions
perhaps you can find a dll in one of them to use
 https://en.wikipedia.org/wiki/Comparison_of_raster_to_vector_conversion_software
I've looked at all the links on Wikipedia and cannot find anything.