Подскажите, в какую сторону копать если имеется задача набросать простенькое приложение (Винды, 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 файлы, а нам нунно отдельно в своем приложении.
Во как бывает!
SVG и прочая векторная графика
Правила форума
Пожалуйста, ознакомьтесь с правилами данного форума
Пожалуйста, ознакомьтесь с правилами данного форума
-
- Маньяк
- Сообщения: 4381
- Зарегистрирован: 20 май 2005, 10:08
- Откуда: Burnaby
- sobomax
- Маньяк
- Сообщения: 3699
- Зарегистрирован: 29 июн 2006, 22:53
- Откуда: Vancouver
Re: SVG и прочая векторная графика
http://cairographics.org/snapshots/libsvg-0.1.4.tar.gz
-Maximlibsvg - 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>
-
- Маньяк
- Сообщения: 4381
- Зарегистрирован: 20 май 2005, 10:08
- Откуда: Burnaby
Re: SVG и прочая векторная графика
Спасибо, но эту штуку НЕспециалисту по графике нужно будет доводить до состояния вьювера не одну неделю.sobomax писал(а):http://cairographics.org/snapshots/libsvg-0.1.4.tar.gz
-Maximlibsvg - 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.
Такого времени в проекте на это нет.
Как запасной вариант ищется PDF вьювер.
- Groundhog
- Графоман
- Сообщения: 5101
- Зарегистрирован: 20 авг 2005, 16:36
- Откуда: Vancouver
Re: SVG и прочая векторная графика
Возвращаясь к вашим (хочу таких-же баранов) баранам.
Поскольку художественными талантами не обладаю и рисовать что-то там мышой
ненавижу хочу картинки всякие из растера в вектер.
Проблема - Inkscape каждый пиксель тупо в путь запихивает - ни анимацию ничего не сделаеш да и файл раздувается 10 times.
В частности я думаю :
растер --> мозаикировать треугольниками (использую GIMP )
мозаик(треугольный) --> SVG (ImageMagic is used)
Мож кто пробовал нечто подобное - поделитесь установками на GIMP или че там Адобе предлагает для преобразования в мозаик.
Ну и если инструментарий какой мож специальный есть?
Поскольку художественными талантами не обладаю и рисовать что-то там мышой
ненавижу хочу картинки всякие из растера в вектер.
Проблема - Inkscape каждый пиксель тупо в путь запихивает - ни анимацию ничего не сделаеш да и файл раздувается 10 times.
В частности я думаю :
растер --> мозаикировать треугольниками (использую GIMP )
мозаик(треугольный) --> SVG (ImageMagic is used)
Мож кто пробовал нечто подобное - поделитесь установками на GIMP или че там Адобе предлагает для преобразования в мозаик.
Ну и если инструментарий какой мож специальный есть?