Категория: Статьи о графике -> Векторная графика (SVG)
VML (Vector Markup Language) - язык разметки (формат), служащий для описания векторных изображений на веб-странице. Был представлен компаниями Microsoft и Macromedia в 1998 году. Год спустя был показан смежный формат SVG, основанный на идее VML и PGML, разработанный Adobe и Sun .
VML изображения описываются внутри HTML страницы в виде текста, по синтаксическим правилам, схожим с HTML и CSS. Например, синий овал выглядит так:
<v:oval style="position:absolute; left:0; top:0;width:100px; height:50px" fillcolor="blue" />
На момент появления, на эту технологию многие делали ставку, как на окно в 3D Интернет, однако вскоре разработчики о VML совсем забыли, предпочитая использовать открытые стандарты SVG. В настоящий момент VML нельзя назвать актуальной технологией, список поддерживающего формат ПО стостоит из двух программ от того же Microsoft: браузер Internet Explorer и Microsoft Office.Сегодня VML используется лишь как "костыль" для браузера Internet Explorer в веб-приложениях, использующих SVG (Microsoft введет поддержку SVG лишь в 9 версии своего браузера).
Несколько лет назад Microsoft представила плагин Silverlight, который позволяет воспроизводить на веб-странице анимацию и медийные приложения, показывать векторную графику. Данное событие забило предпоследний гвоздь в гробу VML, последний гвоздь за 9 версией IE, которая будет поддерживать SVG.
Дата: 2010.05.20 в 13:56:23
Все комментарии (4):
Пример примитивного рисунка с несколькими геометрическими фигурами на VML:
<DIV style="OVERFLOW: hidden; WIDTH: 700px; CLIP: rect(0px 700px 500px 0px); POSITION: absolute; HEIGHT: 500px"><SPAN style="PADDING-RIGHT: 0px; DISPLAY: inline; PADDING-LEFT: 0px; LEFT: -9999em; PADDING-BOTTOM: 0px; MARGIN: 0px; LINE-HEIGHT: 1; PADDING-TOP: 0px; POSITION: absolute; TOP: -9999em"></SPAN><?xml:namespace prefix = rvml ns = "urn:schemas-microsoft-com:vml" /><rvml:group class=rvml style="LEFT: -204px; WIDTH: 1000px; POSITION: absolute; TOP: -315px; HEIGHT: 1000px; rotation: 0" coordsize = "1000,1000"><rvml:roundrect class=rvml style="LEFT: 425px; WIDTH: 150px; TOP: 459px; HEIGHT: 82px" arcsize = "0" coordsize = "21600,21600" filled = "f" stroked = "t" strokecolor = "black" strokeweight = "3pt"><rvml:fill class=rvml></rvml:fill><rvml:stroke class=rvml opacity = "1" miterlimit = "8"></rvml:stroke></rvml:roundrect></rvml:group><rvml:group class=rvml style="LEFT: -315px; WIDTH: 1000px; POSITION: absolute; TOP: -251px; HEIGHT: 1000px; rotation: 0" coordsize = "1000,1000"><rvml:oval class=rvml style="LEFT: 424px; WIDTH: 152px; TOP: 442px; HEIGHT: 116px" coordsize = "21600,21600" filled = "f" stroked = "t" strokecolor = "black" strokeweight = "3pt"><rvml:fill class=rvml></rvml:fill><rvml:stroke class=rvml opacity = "1" miterlimit = "8"></rvml:stroke></rvml:oval></rvml:group><rvml:group class=rvml style="LEFT: -52px; WIDTH: 1000px; POSITION: absolute; TOP: -285px; HEIGHT: 1000px; rotation: 0" coordsize = "1000,1000"><rvml:roundrect class=rvml style="LEFT: 430px; WIDTH: 140px; TOP: 470px; HEIGHT: 60px" arcsize = "0" coordsize = "21600,21600" filled = "t" fillcolor = "black" stroked = "t" strokecolor = "black" strokeweight = "1pt"><rvml:fill class=rvml type = "solid" opacity = ".5"></rvml:fill><rvml:stroke class=rvml opacity = ".75" miterlimit = "8"></rvml:stroke></rvml:roundrect></rvml:group></DIV>
Есть ли конвертер VML в SVG?
Стас, http://vectorconverter.sourceforge.net/
Конвертирует SVG в VML, GIF, GIF. Только не очень хорошо и качественно, но других решений просто нет.
Жаль что других нет конвертеров...
Illia, наверху реальный VML привел. Что значит реальный? То есть он выдран из контекста броузера MSIE (например функцией innerHTML).
И он не соответствует тому представлению, который требуется для утилиты vectorconverter.sourceforge.net.
В частности мне пришлось поменять rvlm на v и убрать екст "lass=rvml" из всех тегов. И еще пришлось оформить все это в виде документа HTML (HTML/HEAD/BODY). И только после этого утилита сконвертировала.
Все бы ничего, но цвета при конвертации потерялись. А без цветов такой конвертер как-то не нужен.
Ваш комментарий