Формат SVG (Scalable Vector Graphic) был разработан в конце 90х для отображения векторной графики в веб сайтах. Основная идея, заложенная в него – использование XML для описания изображения. Именно это сделало SVG очень популярным в веб графике. С помощью css или java script легко изменять XML описание изображения. Соответственно легко сделать анимацию или просто изменить цвет.
Исходя из этого можно определить основные преимущества и недостатки по сравнению с другими форматами популярными в веб графике, такие как png и gif.
Преимущества:
- небольшой размер;
- гибкость. С помощью CSS вы можете быстро изменить настройки графики, такие как цвет фона или положение логотипа на странице;
- изменение размера изображения без изменения качества. Это характерная черта векторной графики;
Недостатки:
- большой размер файла, если объект состоит из большого количества маленьких элементов.
Как видите, недостатков совсем немного.
В FastReport.Net нам доступен экспорт отчета в формат SVG. Но сейчас речь пойдет о другом. А именно об объекте отчета SVG. То есть о возможности вставить векторное изображение SVG в отчет. Для этого предусмотрен объект SVG
на панели инструментов в дизайнере отчетов. Ранее этот объект был доступен в виде плагина к дизайнеру отчетов. Теперь же он включен в библиотеку.
Этот объект наследуется от объекта Picture, так что окно редактирования у них практически одинаковое.
И на странице отчета, объект SVG ничем не отличается от Picture:
Для масштабирования изображения просто растягиваем объект мышью:
При экспорте такого отчета в формат HTML, изображение будет экспортировано в виде svg файла, а в html коде будет ссылка:
1 |
<img src="SVG.D366E814F147C36F912200FCD8949836.svg" alt=""/></td>
|
Чтобы создать объект SVG в коде приложения используйте:
1 |
FastReport.SVG.SVGObject svg = new FastReport.SVG.SVGObject();
|
Ограничения - в данный момент объект поддерживается в сборке для .Net Framework 4. В будущем возможна поддержка .Net Core.