Coder Social home page Coder Social logo

gomi42 / shapeconverter Goto Github PK

View Code? Open in Web Editor NEW
74.0 2.0 7.0 1.28 MB

Convert Adobe Illustrator, Adobe Photoshop, SVG and EPS files to WPF/XAML shapes

License: GNU Affero General Public License v3.0

C# 100.00%
xaml-shapes wpf adobe-illustrator svg eps vector-data photoshop converter icon

shapeconverter's Introduction

ShapeConverter

The ShapeConverter converts vector data into WPF/XAML shapes. The main intention is to convert icons and logos you get from your designer so that you can use the icons and logos as vector data in your WPF projects.

intro

Supported input file types
  • Adobe Illustrator (*.ai)
  • Adobe Photoshop (*.psd, *.psb)
  • Encapsulated Postscript (*.eps)
  • Scalable Vector Graphic (*.svg, *.svgz)
Multiple output formats
  • StreamGeometry for single color shapes, allows to set the color at runtime
  • DrawingBrush for multi color shapes
  • C# source code to generate a Geometry with variable dimensions at runtime
  • 24 output formats
All input files support
  • linear and radial gradients
  • transparency (except EPS) including transparent gradients
More features
  • the generated data do not contain any transformations (one of the main goals of the ShapeConverter's generated code)
  • clipping regions are removed if possible or at least minimized and optimized
  • the XAML does not contain any transformation, the transformations are incorporated into the coordinates of each resulting shape so that a single Geometry is a valid shape without further information needed
  • normalize the coordinates to the range 0..100 (default) to decouple the generated data from the designer's coordinate space
  • selectively deselect parts of the shape if the shape consists of multiple shapes
  • show a background checkboard to verify transparencies of the shape
  • drag & drop a file
  • reverse engineer a given stream geometry in the Stream tab
  • single executable, no installation required
Export
  • Icon (*.ico) with all resolutions 16x16, 32x32, 64x64, 128x128, 256x256
  • Image (*.png, *.jpg, *.tiff, *.bmp)
  • GIF (*.gif)
  • Scalable Vector Graphic (*.svg, *.svgz)
  • Encapsulated Postscript (*.eps)
The ShapeConverter uses the following open source libraries
  • PdfSharp from Stefan Lange, empira Software GmbH
  • psd-parser from Ntreev Soft co., Ltd.
It's not dead, it's done

You might have noticed there isn't much activity here. It's not because the project is unmaintained, it's because the ShapeConverter is done, it just works. Way more features are implemented than were planned at the beginning, the ShapeConverter has reached a state where it serves all conversion needs for the daily use very well. EPS and SVG standards are not 100% supported but the importers support far more than you'll ever encounter in your SVG or EPS icons (e.g. CSS style sheets in SVG). If more is needed it will be implemented.

Forks
  • You must not create a fork unless you want to contribute to the ShapeConverter
  • The forks from the following users just mess up the fork list and must be ignored (the forks exist just because they can and don't contribute anything): Egaros, 93lab, 0000duck, justinhachemeister

shapeconverter's People

Contributors

gomi42 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

shapeconverter's Issues

How to obtain the path of combining two images into one image.

hello bro ,your code is helperful for me in my studying. but i have a question: i have a AI file has two sharp, now two sharp are grouping a sharp ,in your project, import this AI file, will get two path, but i only want to get one path about the two grouping path。so, how to deal with this problem,hope you respones soon

Question: Clarify More About Stream

Hello,

I have read through the documentation and am trying to learn more about the stream input text box, the text box in the stream tab near the file input. I tried loading a System IO MemoryStream into this field but that failed. Note: I uploaded the same file just fine using the file upload control. Is this text box a specific geometry type stream or something like that? Is the “stream” one of the things generated in the tab results? What’s the expected input for the stream text box?

By the way, thanks for sharing this awesome library and providing any assistance you can.

Why can’t I fork?

As per the title. The license doesn’t have restrictions on forks so I’m a bit confused why you’ve stated that you don’t want the project to be forked.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.