Как я могу генерировать пути в файлах .png, используя C #? - PullRequest
1 голос
/ 29 января 2010

Мне нужно проанализировать XML-файл координат и создать .png (с нуля), в котором я рисую пути между координатами. Мне также нужно иметь возможность сгладить углы, когда пути меняют направление (возможно, с использованием безье).

Как я могу сделать это программно в C #?

Спасибо

Ответы [ 2 ]

3 голосов
/ 29 января 2010

Вы можете рисовать в растровое изображение, используя объект Graphics и метод DrawBezier: http://msdn.microsoft.com/en-us/library/system.drawing.graphics.drawbezier.aspx

А затем используйте метод Сохранить , чтобы сохранить его как png.

Я не могу вставить ваш код прямо сейчас, потому что у меня нет среды разработки для создания примера, но это должно быть что-то вроде:

  1. Создайте Растровое изображение с нужным вам размером:

    Bitmap bitmap = new Bitmap(width,height);
    
  2. Получить графический объект из вашего растрового изображения:

    Graphics graphics= Graphics.FromImage(bitmap);
    
  3. Используйте графический объект для рисования (с DrawBezier , если это ваш случай)

    graphics.DrawBezier(pen, a,b,c);
    
  4. Вызов Сохранение Метод с указанием формата PNG:

    bitmap.Save(path,ImageFormat.Png);
    
3 голосов
/ 29 января 2010

C # не имеет никакого понятия о графике - вам нужно выбрать библиотеку векторной графики, чтобы сделать эту работу за вас. Поскольку вы уже находитесь в .NET, я бы предложил WPF для создания изображения и классы Bitmap для экспорта окончательного результата в формате PNG.

Вы можете найти отличное введение в векторную графику WPF здесь .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...