Графическая библиотека для .net, mono и silverlight - PullRequest
4 голосов
/ 13 августа 2010

У меня есть приложение на C #, которое переводит 2D-графику в растровые изображения с помощью System.Drawing.Graphics. Теперь я хочу портировать это приложение для работы в обычном .net на Windows, моно на Linux и в Silverlight / Moonlight.

Но, по крайней мере, в Silverlight отсутствует System.Drawing. Поскольку я не хочу поддерживать несколько копий своего кода рендеринга, мне нужна одна кроссплатформенная графическая библиотека.

Я вижу несколько альтернатив для достижения этой цели:

  1. Использовать библиотеку, доступную на всех платформах
  2. Используйте порт System.Drawing для silverlight
  3. Напишите обертку вокруг графических библиотек разных платформ

Я стараюсь избегать 3) из-за требуемой работы. Так кто-нибудь знает бесплатную библиотеку для 1) или 2)? Библиотека должна иметь разумную лицензию, то есть бесплатную, а не лицензию GPL (с LGPL все в порядке).

1 Ответ

3 голосов
/ 13 августа 2010
  1. Не существует общей библиотеки, которая делает такие вещи, как System.Drawing.
  2. Это было бы огромным предприятием для очень небольшой окупаемости.
  3. Из этих вариантов этоэто единственный жизнеспособный.

Я не уверен, какую графику вы делаете, но рассматривали ли вы XNA?Я не знаю, каковы его учетные данные Mono, но с помощью Silversprite вы можете создать материал, который компилируется как для .NET, так и для Silverlight.

...