Vector Markup Language: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
CheckWikiBOT (discussione | contributi)
m Bot: inserimento portale (via JWB)
 
(37 versioni intermedie di 19 utenti non mostrate)
Riga 1:
[[File:VMLJoconde.jpg|thumb|right|Ritratto sviluppato con codice VML: [http://www.svg-vml.net/Joconde.htm La Gioconda in VML (33Kb)]]]
[[File:VMLog.gif|thumb|right|Logo di VML]]
[[File:VMLJoconde.jpg|thumb|right|Ritratto sviluppato con codice VML: [http://www.svg-vml.net/Joconde.htm La Gioconda in VML (33Kb)]]]
'''Vector Markup Language''' (VML) è un linguaggio [[Extensible Markup Language|XML]] aperto, destinato alla creazione di [[grafica vettoriale]] elaborate in 2D o 3D (statiche o animate) sulle pagine Web.
 
== Storica ==
VML è statofu sottoposto come proposta di standard al [[World Wide Web Consortium|W3C]] nel 1998, per [[Autodesk]], [[Hewlett-Packard]], [[Macromedia]], Microsoft e Visio, ma si trovatrovù in concorrenza con il [[PGML]] proposto da Adobe systems e [[Sun Microsystems]]. Dopo un lungo esame, il W3C decide di abbinare questi due formati, dando lucevita al formato [[Scalable Vector Graphics|SVG]].
 
VML è introdotto in [[Internet Explorer]], [[Microsoft Office]] e [[Silverlight]]. Fa parte della specificazione OOXML, dove viene definito in complemento di DrawingML.
Riga 10 ⟶ 9:
== Utilizzo del formato sul Web ==
Il linguaggio VML può integrarsi sia direttamente nel codice [[HTML]], sia tramite l'elemento <code>v:vmlframe</code> legato ad un o più file XML. Questo elemento permette di sistemare le immagini vettoriali in modo analogo alle immagini bitmap. L'uso degli attributi <code>width</code> e <code>height</code> permette d'ingrandire o di ridurre le immagini senza perdita di qualità. È possibile applicare numerosi effetti di filtro sulle immagini che possono essere ugualmente messe nel sotto-elemento <code>v:fill</code> e prendere effetto degli attributi di colore e digradati, con utilizzo del [[canale alpha]] per la [[trasparenza]]. Esistono tre tipi di digradati da VML: gradient (lineare),
gradientRadial e gradientTitle (con focus variabile). L'extrusion 3D permette la messa in rilievo di ogni elemento VML: gli effetti di luce apportando profondità e realismo alle grafica.
 
VML è un linguaggio che permette realizzazioni complesse su file di formato [[XML]]. VML è maneggiabile con [[JavaScript]] o [[JScript]] e più comodamente con HTML + TIME per le animazioni.
 
[[Google Maps]] utilizza attualmente VML per il reso vettoriale con Internet Explorer, e SVG per i navigatori che lo sopportanosupportano.
 
== Esempi di codice ==
[[Image:Ovale.gif|thumb|right|Risultato del codice esemplificativo]]
Il codice VML seguente integrato nel codice HTML mostra una semplice [http://www.svg-vml.net/oval.htm ellisse] {{Webarchive|url=https://web.archive.org/web/20091212050602/http://www.svg-vml.net/oval.htm# |data=12 dicembre 2009 }}:
<sourcesyntaxhighlight lang = "xml">
<html xmlns:v>
<style>v\:*{behavior:url(#default#VML);position:absolute}</style>
Riga 26 ⟶ 25:
</body>
</html>
</syntaxhighlight>
</source><br>
 
----
Le regole CSS sono utilizzate per i posizionamenti, la [[formattazione del testo]], le dimensioni e i filtri quando essi possono essere applicati.<br>
 
La creazione di oggetti “modello” e la loro duplicazione si effettua tramite l'elemento <code>v:shapetype</code> per ogni forma vettoriale, e l'elemento <code>v:vmlframe</code> per i gruppi di oggetti vettoriali.<br><br>
Qui sotto: Esempio più complesso di combinazioni di elementi ed attributi propri a VML dentro il codice HTML.<br>
 
Una <span style="color:red">'''forma'''</span> definita da un file XML esterna è introdotta da l'elemento vmlframe su il quale un filtro e applicato. <br>
Qui sotto: Esempio più complesso di combinazioni di elementi ed attributi propri a VML dentro il codice HTML.<br>
Altre <span style="color:#60CC00">''' forme periferiche'''</span> sono calcate su una <span style="color:green">'''shapetype'''</span>.
 
Ogni forma discendente di questa ultima può anche prendere i suoi propri attributi distinti del modello. L'<span style="color:#9F3300">''' insieme'''</span> raggruppato da l'elemento '''v:group''' viene a suo tempo riprodotto da una nuova "<span style="color:fuchsia">'''vmlframe'''</span>".<br>
Una <span style="color:red">'''forma'''</span> definita da un file XML esterna è introdotta da l'elemento vmlframe su il quale un filtro e applicato. <br>
Queste proprietà permettono delle composizioni vettoriali molto ricche utilizzando poche scritture.<br>
Altre forme periferiche sono calcate su una shapetype.
<table border=1 style="background-color:#A1C1CF;font-size:12px;width:690px">
Ogni forma discendente di questa ultima può anche prendere i suoi propri attributi distinti del modello. L'<span style="color:#9F3300">''' insieme'''</span> raggruppato da ldall'elemento '''"v:group'''" viene a suo tempo riprodotto da una nuova "<span style="color:fuchsia">'''vmlframe'''</span>".<br>
<tr><td>
 
[[Image:VMLfireball.jpg|306px|thumb|right|Illustrazione di esempi: [http://www.web-vector-image.net/fireball.htm VML COLORED FIREBALL]]]
Queste proprietà permettono delle composizioni vettoriali molto ricche utilizzando poche scritture.<br>
 
<table{| border="1" style="background-color:#A1C1CF;font-size:12px;width:690px">
|-
|
[[Image:VMLfireball.jpg|306pxupright=1.4|thumb|right|Illustrazione di esempi: [https://web.archive.org/web/20100110220249/http://www.web-vector-image.net/fireball.htm VML COLORED FIREBALL]]]
<span style="background-color:aqua">'''&nbsp;File HTML&nbsp;'''</span>
 
<br><br>
&lt;<span style="color:#9933A3">'''html'''</span> xmlns:v&gt;<br><br>
 
&lt;<span style="color:#9933A3">'''style'''</span>&gt;<br>
v\:*&lt;<span style="color:#d657009933A3">{behavior:url(#default#VML);position:absolute}'''style'''</span>&gt;<br />
v\:shape*<span style="color:#d65700">{widthbehavior:10000url(#default#VML);heightposition:10000absolute}</span><br />
v\:groupshape<span style="color:#d65700">{width:100010000;height:100010000}</span><br />
&lt;v\:group<span style="color:#9933A3d65700">'''/style'''{width:1000;height:1000}</span>&gt;<br><br />
&lt;<span style="color:#9933A3">'''body/style'''</span>&gt;<br><br>
 
&lt;<span style="color:#9933A3">'''stylebody'''</span>&gt;<br>
 
&lt;<span style="color:#9933A3">'''h1'''</span>&gt;VML
COLORED FIREBALL&lt;<span style="color:#9933A3">'''/h1'''</span>&gt;<br><br>
 
&lt;<span style="color:red">'''v'''</span>''':shapetype id='''"<span style="color:green">'''arw</span>'''"''' path='''"
&lt;<span style="color:bluered">m,c2,2,4,5,6,11,5,8,3,5,,2,1,2,,1,,e'''v'''</span>"''':shapetype fillcolorid='''"'''<span style="color:bluegreen">redarw</span>'''"''' path='''"&gt;<br>
&nbsp;&nbsp;&lt;<span style="color:redblue">'''vm,c2,2,4,5,6,11,5,8,3,5,,2,1,2,,1,,e</span>:stroke"''' colorfillcolor='''"<span style="color:blue">yellowred</span>"&gt;<br />
&nbsp;&nbsp;&lt;'''weight='''"<span style="color:bluered">4v</span>":stroke '''opacitycolor='''"<span style="color:blue">.4yellow</span>"/&gt;<br>
&lt;'''weight='''"<span style="color:redblue">'''/v4</span>:shapetype" '''opacity='''"<span style="color:blue">.4</span>"/&gt;<br><br />
&lt;'''<span style="color:red"><b>/v</span>:vmlframe src="<span style="color:#414141">ball.xml</span><span style="color:red">#ball</span>"shapetype'''&gt;
 
clip=</b>"<span style="color:blue">t</span>" '''size='''"<span style="color:blue">32,32</span>"<br>
&lt;'''<span style="color:red">v</span>:vmlframe src="<span style="color:#414141">ball.xml</span><span style="color:red">#ball</span>" clip='''"<span style="color:blue">t</span>" '''size='''"<span style="color:blue">32,32</span>"<br />
&nbsp;'''style='''"<span style="color:blue">top:55;width:580;height:550;background-color:white;filter:blur(Add=1,Strength=140)</span>"/&gt;
<br />
<br />
&lt;'''<span style="color:red">'''v</span>:group id='''"<span style="color:#713300">'''gr1'''</span>"
'''style='''"<span style="color:blue">left:80;top:25</span>"&gt;
<br />
<br />
&lt;'''<span style="color:red">'''v</span>:shape type='''"'''<span style="color:green"><b>#arw</span>" style='''"<span style="color:blue">left:65;top:50;width:55000;height:4000</span>"
'''fillcolor='''"<span style="color:blue">aqua</bspan>" '''strokecolor='''"<span style="color:blue">left:65;top:50;width:55000;height:4000lime</span>"/&gt;<br />
&lt;'''fillcolor='''"<span style="color:bluered">aquav</span>":shape '''strokecolortype='''"<span style="color:bluegreen">lime'''#arw'''</span>"/&gt;<br>
&lt;'''style='''"<span style="color:redblue">'''vleft:460;top:80</span>:shape"''' typefillcolor='''"<span style="color:greenblue">'''#arw'''fuchsia</span>"/&gt;<br />
&lt;'''style='''"<span style="color:bluered">left:460;top:80v</span>"''':shape fillcolortype='''"<span style="color:bluegreen">fuchsia'''#arw'''</span>"/&gt;<br>
&lt;<span style="color:red">'''v</span>:shape type='''"<span style="color:green">'''#arw'''</span>"
'''style='''"<span style="color:blue">left:-1900;top:1430;width:5000;height:4000;rotation:50</span>"/&gt;
<br />
<br />
&lt;'''<span style="color:red">'''/v</span>:group'''&gt;
 
<br>
&lt;'''<span style="color:red">'''v'''</span>''':shapetypevmlframe idsrc='''"<span style="color:greenfuchsia">'''arw#gr1'''</span>'''"''' pathstyle='''"
<br>
&lt;<span style="color:red">'''v</span>:vmlframe src='''"<span style="color:fuchsia">'''#gr1'''</span>"''' style='''"
<span style="color:blue">left:390;top:140;width:200;height:150</span>"/&gt;
<br />
<br />
&lt;<span style="color:#9933A3">'''/body'''</span>&gt;<br />
&lt;<span style="color:#9933A3">'''/html'''</span>&gt;
|}
 
<table{| border="1" style="background-color:#A3C7A2;font-size:12px;width:690px">
</table>
|-
 
|
<table border=1 style="background-color:#A3C7A2;font-size:12px;width:690px">
<tr><td>
<span style="background-color:lime">'''&nbsp;File XML esterna: "<span style="color:#414141">ball.xml</span>"&nbsp;'''</span>
<br /><br />
<span style="color:#9933A3">&lt;xml <fontspan colorstyle="color:maroon">xmlns:v</span>&gt;</span>
 
<br>
<br>
&lt;v:group <span style="color:maroon">id="</span><span style="color:red">'''ball'''</span>" style="<span style="color:blue">width:2000;height:2000</span>"&gt;
<br />
<br />
&lt;v:shape <span style="color:maroon">style</span>="<span style="color:blue">left:4;top:1</span>"
<span style="color:maroon">path</span>="<span style="color:blue">m9,1l9,r1,2l11,1r,2l12,2v,4,,7,-7,6l6,7,4,6r1,c6,6,6,5,3,4r1,l,2r3,l2,1r3,l4,xnse</span>"&gt;
<br />
&nbsp;&lt;v:fill <span style="color:maroon">color</span>="<span style="color:blue">red</span>"
<span style="color:maroon">color2</span>="<span style="color:blue">yellow</span>"
<span style="color:maroon">focusposition</span>="<span style="color:blue">.99,.8</span>"
<span style="color:maroon">focussize</span>="<span style="color:blue">.01,.01</span>"
<span style="color:maroon">type</span>="<span style="color:blue">gradientTitle</span>"/&gt;<br />
&nbsp;&lt;v:shadow
<span style="color:maroon">on</span>="<span style="color:blue">t</span>"
Riga 109 ⟶ 116:
<span style="color:maroon">opacity</span>="<span style="color:blue">.4</span>"
<span style="color:maroon">offset</span>="<span style="color:blue">-1pt,-.5pt</span>"
<span style="color:maroon">offset2</span>="<span style="color:blue">-2pt</span>"/&gt;<br />
&lt;/v:shape&gt;<br />
&lt;/v:group&gt;<br />
<br />
&lt;/xml&gt;</font>
|}
</table>
 
== Editori e logistica ==
 
Microsoft Office permette di pubblicare grafica VML senza tuttavia utilizzare integralmente i DOM di VML.<br />
[[OpenOffice.orgLibreOffice]] permette di creare delle cartelle sostituibili al seguito burocratico di Microsoft con
delle grafica convertite in VML.
 
==Altri progetti==
{{interprogetto}}
 
==Collegamenti esterni==
=== Rapporto e dimostrazioni ===
*{{en}} [http://www.svg-vml.net/ Paragone VML/SVG] {{collegamentoWebarchive|url=https://web.archive.org/web/20100117182213/http://www.svg-vml.net/ |date=17 gennaio 2010 interrotto}}
*{{en}}cita [web|1=http://midiwebconcept.free.fr/watkins.htm |2=Esempi basici.]|lingua=en|accesso=14 dicembre 2009|urlarchivio=https://web.archive.org/web/20100323213835/http://midiwebconcept.free.fr/watkins.htm#|dataarchivio=23 marzo 2010|urlmorto=sì}}
*{{fr}}cita [web|1=http://midiwebconcept.free.fr/ |2=Altri esempi notevoli.]|lingua=fr|accesso=14 dicembre 2009|urlarchivio=https://web.archive.org/web/20110720223740/http://midiwebconcept.free.fr/#|dataarchivio=20 luglio 2011|urlmorto=sì}}
*{{en}}cita [web|1=http://francoisfabie.free.fr/gallery.html |2=Galleria VML.]|lingua=en|accesso=5 febbraio 2010|urlarchivio=https://web.archive.org/web/20110720221327/http://francoisfabie.free.fr/gallery.html|dataarchivio=20 luglio 2011|urlmorto=sì}}
*{{fr}}cita [web|url=http://www.dhteumeuleu.com/gallery-v6.php?tag=IE |titolo=Grafica animate VML + JavascriptJavaScript.]|lingua=fr|accesso=14 dicembre 2009|urlarchivio=https://web.archive.org/web/20120623000540/http://www.dhteumeuleu.com/gallery-v6.php?tag=IE|dataarchivio=23 giugno 2012|urlmorto=sì}}
 
=== Tutori, didattici ===
*{{fr}}cita [web|1=http://midiwebconcept.free.fr/ |2=Midiwebconcept Tutorial VML.]|lingua=fr|accesso=14 dicembre 2009|urlarchivio=https://web.archive.org/web/20110720223740/http://midiwebconcept.free.fr/#|dataarchivio=20 luglio 2011|urlmorto=sì}}
*{{fr}}cita [web|http://www.asp-php.net/tutorial/vml/index.php |asp-php.net tutoriel.]|lingua=fr}}
 
{{Portale|informatica}}
[[Categoria:XML]]
 
[[Categoria:Linguaggi di markup XML]]
[[de:Vector Markup Language]]
[[en:Vector Markup Language]]
[[es:Vector Markup Language]]
[[fr:Vector Markup Language]]
[[ja:Vector Markup Language]]
[[pl:Vector Markup Language]]
[[ru:VML]]
[[sk:VML]]
[[zh:VML语言]]