Страница 1 из 1

SVG и прочая векторная графика

Добавлено: 19 мар 2008, 23:26
Slav
Подскажите, в какую сторону копать если имеется задача набросать простенькое приложение (Винды, MSVC, MFC), которое будет открывать и выводить в окно изображение из файлов SVG формата (векторная графика) и позволять накладывать разную самодельную (GDI) графику поверх.
Думается, что нужна библиотечка (желательно бесплатная) с минимальным набором функций:
- открыть файл
- вывести изображение в окно
- скролить и зумить

Библиотека должна поддерживать наиболее полную спецификацию SVG. По этой причине AGG (http://antigrain.com/) не подходит. Имярек таки-да декларирует "SVG viewer" и даже демострирует возможности на прилагаемых примерах, но на деле поддерживает только самые базовые функции SVG. И контрольный файл просто не открывает.

Cairo (http://cairographics.org/) не предлагать, т.к. она только сохраняет в SVG формате. Открывашки нет.

На SVG Implementation (http://www.svgi.org/) заходил раз сто и каждый раз вываливался оттуда одуревший и без результата.

Для Джавы есть, но надо на МFC.

Для СиШарпа есть, но надо на МFC.

Любой браузер окрывает SVG файлы, а нам нунно отдельно в своем приложении.

Во как бывает!

Re: SVG и прочая векторная графика

Добавлено: 20 мар 2008, 12:06
sobomax
http://cairographics.org/snapshots/libsvg-0.1.4.tar.gz
libsvg - a library for SVG files

Description
-----------
libsvg provides a parser for SVG content in files or buffers.

Dependencies
------------
libsvg depends on libxml2, and should be easy to build on any
reasonable system.

Usage
-----
libsvg does not do any rendering, but instead provides a
function-based interface that can be used by various rendering
engines. See the declaration of svg_render_engine_t in svg.h.

It is anticipated that the primary uses of libsvg would be in small
libraries that connect the libsvg parser to a rendering engine. Those
libraries, in turn, would provide the capability to applications to
directly render SVG content from files or buffers.

Known uses
----------
At this time, the only known library using libsvg is libsvg-cairo which
uses the cairo graphics library. A port of librsvg, (using libart), to
use libsvg is expected.

History
-------
libsvg was developed by Carl Worth <cworth@isi.edu>
libsvg was based on code from librsvg by Raph Levien <raph@acm.org>
-Maxim

Re: SVG и прочая векторная графика

Добавлено: 25 мар 2008, 22:24
Slav
sobomax писал(а):http://cairographics.org/snapshots/libsvg-0.1.4.tar.gz
libsvg - a library for SVG files

Description
libsvg does not do any rendering, but instead provides a
function-based interface that can be used by various rendering
engines. See the declaration of svg_render_engine_t in svg.h.

It is anticipated that the primary uses of libsvg would be in small
libraries that connect the libsvg parser to a rendering engine. Those
libraries, in turn, would provide the capability to applications to
directly render SVG content from files or buffers.
-Maxim
Спасибо, но эту штуку НЕспециалисту по графике нужно будет доводить до состояния вьювера не одну неделю.
Такого времени в проекте на это нет.

Как запасной вариант ищется PDF вьювер.

Re: SVG и прочая векторная графика

Добавлено: 25 янв 2015, 11:44
Groundhog
Возвращаясь к вашим (хочу таких-же баранов) баранам.
Поскольку художественными талантами не обладаю и рисовать что-то там мышой
ненавижу хочу картинки всякие из растера в вектер.
Проблема - Inkscape каждый пиксель тупо в путь запихивает - ни анимацию ничего не сделаеш да и файл раздувается 10 times.
В частности я думаю :
растер --> мозаикировать треугольниками (использую GIMP )
мозаик(треугольный) --> SVG (ImageMagic is used)
Мож кто пробовал нечто подобное - поделитесь установками на GIMP или че там Адобе предлагает для преобразования в мозаик.
Ну и если инструментарий какой мож специальный есть?