Как превратить изображение SVG в поверхность SDL или массив пикселей RGBA с помощью Python?
Я предполагаю, что это должно быть сделано с помощью какой-то основы. Google дает libCairo как наиболее распространенный результат, но это слишком много зависимостей.
Я имею в виду то, что будет работать на Win/Lin/OSX, быть не-GPL, Python-совместимым, свободно распространяемым. И желательно несколько сотен килобайт.
Дело в том, что он даже не должен поддерживать полную спецификацию SVG. Просто линии, формы, градиентные заливки и размытие.
В качестве альтернативы, есть ли векторный формат, который можно было бы использовать проще?
1 ответ
Попробуйте python-rsvg с http://www.cairographics.org/pyrsvg/
Слишком много зависимостей? В самом деле? http://www.cairographics.org/download/ имеет бинарные файлы для Windows. Это зависит от libpng
а также zlib
, Не знаю, как получить привязку к Python. Если привязки слишком жесткие, вы можете просто rsvg file.svg output.png
,
Вы можете попробовать поискать в PyPi 'svg': http://pypi.python.org/pypi?%3Aaction=search&term=svg&submit=search. Там где-то есть загрузчик SVG для OpenGL.