title: Vector graphics library for Windows with C# bindings
body: <p>For fun, I'd like to see if I can create a library that is a bit like a small subset of WPF: a managed template driven vector based graphics system. (I have some theories I'd like to test.) I am not however a graphics genius and am looking for a good vector graphics library to start with. </p>
  
  <p>I know Microsoft uses MilCore internally which more or less seems to pass a list of vector structures from the managed world to the unmanaged world and renders them. I believe this underlying library is immediate mode based. I'd like to use an existing free vector graphics library with a laundry list of desired features:</p>
  
  <ol>
  <li>Vector based  </li>
  <li>Immediate or retained mode, preferably immediate?  </li>
  <li>Pixel shader support  </li>
  <li>Geometry hit testing would be nice  </li>
  <li>Image support, image rotation support  </li>
  <li>.NET binding  </li>
  <li>Stable to the point of being commercially viable on a small scale</li>
  </ol>
  
  <p>Things I don't need:  </p>
  
  <ol>
  <li>Cross platform support. If that locks it into DirectX or even Direct3D 10 or 11 specifically, so be it.  </li>
  <li>Higher level management of graphics in anything resembling a "control". This layer of management I'd probably want to do myself.  </li>
  <li>I'm not scared of a little interop.  </li>
  <li>Super awesome performant. I'd like this to be performant but if usability suffers too much because of it, I won't be successful.</li>
  </ol>
  
  <p>This library <a href="http://jeremiahmorrill.com/2011/02/05/a-simple-directcanvas-tutorial/" rel="noreferrer">http://jeremiahmorrill.com/2011/02/05/a-simple-directcanvas-tutorial/</a> looks similar to what I'd like, but preferably something more stable and with more examples.<br>
  I'd prefer something a layer above DX/OpenGL if possible.  </p>
  
  <p>What options do I have? Does this exist or is it just a pipe dream? Thank you in advance - I feel like I've just typed in a shopping list but I'd really appreciate the community's feedback on this. It didn't quite seem to fit other vector graphics questions I've seen listed here, but if I missed a great post, let me know!</p>