Рисование SVG-изображений в wxWidgets - PullRequest
6 голосов
/ 17 декабря 2009

Мне нужно иметь возможность рисовать SVG изображения (с возможностью масштабирования и поворота изображений на 90,180 и 270 градусов).

Я также хочу, чтобы вместо рендеринга изображений в растровое изображение (например, для отображения) была возможность рисовать их в новом SVG-изображении (экспорт "документа" в SVG).

wxWidgets, похоже, не имеет каких-либо встроенных возможностей SVG, поэтому я не уверен, что делать с добавлением таких функций.

Ответы [ 2 ]

5 голосов
/ 21 декабря 2009

На веб-сайте Каирской библиотеки имеется примеров при рисовании SVG с использованием librsvg .

Обе библиотеки cairo и librsvg должны быть достаточно кроссплатформенными, чтобы делать то, что вам нужно, а с wxcairo должна быть возможность закрепить их WxWidgets .

Это первая идея, которую я бы исследовал, когда столкнулся с задачей отрисовки SVG в wxWidgets .

Кроме того, рисование в SVG-файлы с помощью cairo довольно легко, если вы все равно выполняете рисование с помощью cairo , а модель для рисования cairo использует очень похож на SVG.

0 голосов
/ 17 декабря 2009

Вы можете выполнить рендеринг в файл в формате SVG, используя wxSVGFileDC (http://docs.wxwidgets.org/trunk/classwx_s_v_g_file_d_c.html), но поддержка рисования изображений SVG не поддерживается, вам нужно будет использовать библиотеку рендеринга SVG и интегрировать ее с wx (как это сделать зависит от платформы).

Обратите внимание, что wxSVGFileDC входит в contrib, то есть в библиотеку wx 2.8 добавляется дополнительная библиотека, которую необходимо собрать независимо, но в самой главной библиотеке 2.9.

...