Библиотека C# для вывода векторного формата CGM или WMF
Вопрос
Я пишу приложение для диаграммы в C# .net 4 и нуждается в редактировании графического вывода в Microsoft Excel. Единственные 2 -векторные форматы, которые я знаю для MS Office - CGM и WMF. Я использую Opentk для его обертки OpenGL, поэтому у меня есть все вершины.
Я также посмотрел на Метафил в .NET 4 Но это кажется в основном для чтения файлов WMF. Это все еще выходит в PNG.
Я уже почти отказался от надежды на CMG, на самом деле не так много информации. Для формата метафиле Windows я нашел эта ссылка Итак, вопрос: у кого есть библиотека OpenSource (предпочтительно C#), я уже могу использовать, пожалуйста?
Поскольку я так плохо в этом, мне нужно что -то простое в использовании, как:
wmf = new Wmf();
wmf.addLine(x, y);
wmf.addRectangle(x, y, w, h);
wmf.addEllipse(x, y, radiusx, radiusy);
wmf.save("welldone.wmf");
Остальные посты вокруг, и Google, кажется, не заботится о том, является ли это векторным или растровым форматом, поэтому я надеюсь получить дополнительную помощь. Спасибо.
Решение
Проверьте библиотеку WMF: http://wmf.codeplex.com/
var wmf = new WmfDocument();
wmf.Width = 1000;
wmf.Height = 1000;
wmf.Format.Unit = 288;
wmf.AddPolyFillMode(PolyFillMode.WINDING);
wmf.AddCreateBrushIndirect(Color.Blue, BrushStyle.BS_SOLID);
wmf.AddSelectObject(0);
wmf.AddCreatePenIndirect(Color.Black, PenStyle.PS_SOLID, 1);
wmf.AddSelectObject(1);
wmf.AddLine(Point start, Point end);
wmf.AddRectangle(x, y, width, height);
wmf.AddEllipse(x, y, width, height);
wmf.AddDeleteObject(0);
wmf.AddDeleteObject(1);
wmf.Save(path);