벡터 마크업 언어

벡터 마크업 언어(Vector Markup Language, VML)는 2차원 벡터 그래픽스를 위한 XML 기반 파일 포맷이다.

벡터 마크업 언어
파일 확장자.htm 또는 .html
인터넷 미디어 타입
application/vnd.openxmlformats-officedocument.vmlDrawing
개발마이크로소프트
포맷 종류벡터 이미지 포맷
다음으로부터 확장XML
표준ECMA-376 및 ISO/IEC 29500:2008의 일부
웹사이트ECMA-376, ISO/IEC 29500-4:2012

VML은 오피스 오픈 XML 표준 ISO/IEC 29500의 파트 4와 ECMA-376에 규정되어 있다. 규격에 따르면 VML은 오피스 오픈 XML이 유산적(legacy) 이유로 문제가 제기된 포맷으로 간주된다.[1][2]

VML은 마이크로소프트 오피스 2007 이상의 문서(워드, 액셀, 파워포인트 문서)에 사용된다.[1][3][4]

문법

편집

아래는 마이크로소프트 엑셀 2010이 만들어낸 VML의 한 예이다.

<xml xmlns:v="urn:schemas-microsoft-com:vml"
 xmlns:o="urn:schemas-microsoft-com:office:office"
 xmlns:x="urn:schemas-microsoft-com:office:excel">
 <o:shapelayout v:ext="edit">
  <o:idmap v:ext="edit" data="1"/>
 </o:shapelayout><v:shapetype id="_x0000_t202" coordsize="21600,21600" o:spt="202"
  path="m,l,21600r21600,l21600,xe">
  <v:stroke joinstyle="miter"/>
  <v:path gradientshapeok="t" o:connecttype="rect"/>
 </v:shapetype><v:shape id="_x0000_s1025" type="#_x0000_t202" style='position:absolute;
  margin-left:203.25pt;margin-top:82.5pt;width:108pt;height:59.25pt;z-index:1;
  visibility:hidden' fillcolor="#ffffe1" o:insetmode="auto">
  <v:fill color2="#ffffe1"/>
  <v:shadow on="t" color="black" obscured="t"/>
  <v:path o:connecttype="none"/>
  <v:textbox style='mso-direction-alt:auto'>
   <div style='text-align:left'></div>
  </v:textbox>
  <x:ClientData ObjectType="Note">
   <x:MoveWithCells/>
   <x:SizeWithCells/>
   <x:Anchor>
    4, 15, 5, 10, 6, 31, 9, 9</x:Anchor>
   <x:AutoFill>False</x:AutoFill>
   <x:Row>6</x:Row>
   <x:Column>3</x:Column>
  </x:ClientData>
 </v:shape>
</xml>

xml이라는 루트 요소를 지정함으로써 VML은 W3CXML 권고안을 무시한다. (x, m, l로 시작하는 이름은 차후 버전의 규격에 사용하기 위해 보유한 것이기 때문).[5]

 
인터넷 익스플로러의 VML 타원형
 
VML 웹아트의 예[6]

HTML 마크업에 임베드할 때 VML은 마이크로소프트 인터넷 익스플로러를 통해 읽히고 처리된다. 다음의 예는 파란 타원형을 보여준다:

<html xmlns:v>
<style>v\:*{behavior:url(#default#VML);position:absolute}</style>
<body>
<v:oval style="left:0;top:0;width:100;height:50" fillcolor="blue" stroked="f"/>
</body>
</html>

참조

편집
  1. “Is VML in or out now, or was that a typo?”. 2007년 6월 22일. 2008년 6월 21일에 원본 문서에서 보존된 문서. 2010년 7월 29일에 확인함. 
  2. “Ecma TC45 - New proposed dispositions extend progress in addressing all National Body comments, seek to document and resolve legacy issues – Nearly 2/3 of comments now reviewed”. 2007년 12월 21일. 2010년 7월 29일에 확인함. 
  3. Stephane Rodriguez (2007년 9월 4일). “Microsoft Office XML formats ? Defective by design”. 
  4. Yegor Kozlov. “POI API Documentation — Class XSSFVMLDrawing”. Apache Software Foundation. 2010년 7월 29일에 확인함. 
  5. “Extensible Markup Language (XML) 1.0 (Fifth Edition)”. World Wide Web Consortium. 2008년 11월 26일. 2012년 11월 12일에 확인함. 
  6. “Vector Mona Lisa”. 2013년 1월 4일에 원본 문서에서 보존된 문서. 2011년 8월 29일에 확인함. 

외부 링크

편집