Red de conocimiento informático - Material del sitio web - Introducción y demostración de programación de la API de dibujo de gráficos de páginas web basada en SVG

Introducción y demostración de programación de la API de dibujo de gráficos de páginas web basada en SVG

El nombre completo de SVG es gráfico vectorial escalable, que es muy diferente de los gráficos rasterizados tradicionales (JPG, PNG, GIF, etc.). Los amigos que estén interesados ​​pueden compartir con ustedes la demostración de programación de la API de SVG en. JavaScript como referencia 1. ¿Qué es SVG? SVG es un lenguaje de descripción de gráficos D lanzado por WC. Es un lenguaje de marcado basado exclusivamente en formato XML. El nombre completo de SVG es gráfico vectorial escalable. Gráficos (JPG, PNG, GIF, etc.) La diferencia entre SVG y SVG es que la plataforma de desarrollo de gráficos 3D consta de dos partes. Una se basa en la descripción de datos en lenguaje XML y la otra es una API programable. Sus características clave admiten gráficos. Los filtros de efectos especiales gráficos de estilo de pincel de relleno degradado de texto, como el desenfoque gaussiano, se analizarán más adelante en el código. La demostración también admite varios eventos de mouse y algunas API DOM también admiten la realidad y el dibujo del formato de gráficos SVG. comenzó a admitir SVG. En versiones inferiores de IE, se requiere compatibilidad con complementos. Para obtener más información sobre SVG, visite aquí 2 La programación API de SVG en JavaScript demuestra la creación y obtención de objetos SVG. var mySvg = documento createElementNS(" "svg"); mySvg setAttribute("version" " "); // IE admite la versión SVG mySvg setAttribute("baseProfile" "tiny"); contenedor appendChild(mySvg); crea un gráfico rectangular en SVG. Copie el código de la siguiente manera: var c = document createElementNS(" "rect"); c setAttribute("x" " "); c setAttribute("y" " "); c setAttribute("width" " "); c setAttribute("altura" " "); c setAttribute("relleno" "rgb()"); c setAttribute("trazo" " rgb( )"); c setAttribute("ancho del trazo" " "); c ); Para implementar el dibujo de texto en SVG, copie el código de la siguiente manera: // SVG dibuja texto var stext = document createElementNS(" "text") ; stext setAttribute("x" " "); stext setAttribute("y" " "); stext setAttribute("tamaño de fuente" " px"); stext setAttribute("fill" "#FF "); var textString = documento createTextNode ("Hola SVG"); stext appendChild(textString); mySvg appendChild(stext) ; Implemente el manejo de eventos de clic del mouse y el manejo de eventos MouseUp en el objeto SVG. Copie el código de la siguiente manera: // manejo de eventos del mouse c addEventListene.

r("click" changeColor false); c addEventListener("mouseup" changeColor false); Implementar el desenfoque gaussiano a través del filtro gráfico SVG: lt; =" left" gt;lt;img src=woniu png alt="Imagen original" width= height= gt;lt;/divgt;lt;div id="right" gt;lt;svg xmlns="lt;defsgt; lt; filtro id="f " " " ancho= alto= xlink: href="woniu png" filter="url(#f)"/gt;/svggt;/divgt;/divgt; ¿Efecto? El código fuente se puede copiar y ejecutar directamente. La parte JavaScript del código copiado es la siguiente: window onload = function() { // get DIV var container = document getElementById("svgContainer"); objeto var mySvg = documento createElementNS(" "svg"); mySvg setAttribute(" version" " "); // IE admite la versión SVG mySvg setAttribute("baseProfile" "tiny"); contenedor appendChild(mySvg); // crea svg forma rectángulo var c = documento createElementNS(" "rect"); c setAttribute( "x" " "); c setAttribute("y" " "); c setAttribute("ancho" " "); c setAttribute("alto" " "); c setAttribute("fill" "rgb( )"); c setAttribute("trazo" "rgb( )"); c setAttribute("ancho de trazo" " "); svg forma círculo var c = documento createElementNS(" "círculo"); c setAttribute ("cx" " "); c setAttribute("cy" " "); c setAttribute("r" " "); c setAttribute("fill " "# "); c setAttribute("stroke" "#AA FF" ); c setAttribute("

ancho de trazo" " "); mySvg appendChild(c); // crear forma de elipse var c = documento createElementNS(" "ellipse"); c setAttribute("cx" " "); ; c setAttribute("rx" " "); c setAttribute("ry" " "); c setAttribute("relleno" "#FF "); c setAttribute("trazo" "púrpura"); " " "); mySvg appendChild(c); // crea líneas de dibujo de forma svg para(var i=; ilt;; i) { var sline = document createElementNS(" "line"); var x = i*; (x ); ("y " " ") ("trazo" "rgb()"); línea setAttribute("ancho de trazo" " "); mySvg appendChild(línea } // SVG dibuja texto var stext = documento createElementNS(" "texto); "); stext setAttribute(" x" " "); stext setAttribute("y" " "); stext setAttribute("tamaño de fuente" " px"); stext setAttribute("fill" "#FF "); var textString = document createTextNode("Hola SVG"); stext appendChild(textString); mySvg appendChild(stext); // manejo de eventos del mouse c addEventListener("click" changeColor false); c addEventListener("mouseup" changeColor false }); (evt) { var target = evt target setAttributeNS(null "fill" "green"); la parte HTML del código copiado es la siguiente: lt; gt headgt; /titlegt; lt; estilo; #svgContainer {ancho: px; alto: px;

nd color: #EEEEEE; } #left { float: left } #right { float: right } lt;/stylegt;/headgt;bodygt;div id="svgContainer"gt;/ divgt;lt;div id="demostración de imagen borrosa"gt;lt;div id="izquierda" gt;lt;img src=woniu png alt="Imagen original" ancho= alto= gt;lt;/divgt;lt; div id="right" gt; svg xmlns=" lt; defsgt; lt; filtro id="f " x=" " y=" "gt; lt; feGaussianBlur in="SourceGraphic" stdDeviation=" " /gt ; lt;/filtergt; lt;/defsgt; imagen x=" " y=" " ancho= alto= xlink: href="woniu png" filter="url(#f)"/gt; ; lt;/divgt; lt;/divgt;/bodygt; lt;/gt; ?lishixinzhi/Artículo/programa/Java/JSP/201311/20558