4D v16SVG_Define_linear_gradient |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v16
SVG_Define_linear_gradient
|
SVG_Define_linear_gradient ( objetoSVGPadre ; id ; colorInicio ; colorFin {; rotacion {; spreadMethod {; x1 ; y1 ; x2 ; y2}{; iniciarOffsetColor ; finOffsetColor}}} ) -> Resultado | ||||||||
Parámetro | Tipo | Descripción | ||||||
objetoSVGPadre | Ref_SVG |
![]() |
Referencia del elemento padre | |||||
id | Cadena |
![]() |
Nombre del degradé | |||||
colorInicio | Cadena |
![]() |
Color de inicio | |||||
colorFin | Cadena |
![]() |
Color de fin | |||||
rotacion | Entero |
![]() |
Rotación del vector de degradé | |||||
spreadMethod | Texto |
![]() |
Modo de difusión (pad, reflect o repeat) | |||||
x1 | Real |
![]() |
Coordenada x1 del vector de degradé (Si se omite = 0) | |||||
y1 | Real |
![]() |
Coordenada y1 del vector de degradé (Si se omite = 1) | |||||
x2 | Real |
![]() |
Coordenada x2 del vector de degradé (Si se omite = 0) | |||||
y2 | Real |
![]() |
Coordenada y2 del vector de degradé (Si se omite = 1) | |||||
iniciarOffsetColor | Real |
![]() |
Valor del porcentaje de offset para iniciar color | |||||
finOffsetColor | Real |
![]() |
Valor del porcentaje de offset para finalizar color | |||||
Resultado | Cadena |
![]() |
Referencia del degradé | |||||
El comando SVG_Define_linear_gradient define un nuevo degradé lineal en el contenedor SVG designado por objetoSVGPadre y devuelve su referencia. Si objetoSVGPadre no es un documento SVG, se genera un error.
Un degradé consiste en una transición de color progresiva continua de un color a otro a lo largo de un vector. Una vez definido, los degrades se llaman en un elemento gráfico dado. Debe indicar si el elemento debe llenarse o bordearse con el degradé llamado.
El parámetro id especifica el nombre del degradé. Si existe un elemento con el mismo nombre, se reemplazará. Este nombre se utilizará para llamar al degradé cada vez que una expresión color se espere utilizando la sintaxis "url (#ID)".
Los parámetros colorInicio y colorFin especifican los colores que se utilizan para iniciar y terminar el degradé.
El parámetro opcional rotacion define la posición y la dirección del vector de degradé (ver ejemplo).
Si este parámetro se omite, el efecto del valor "pad" se utiliza.
Los parámetros opcionales x1, y1, x2 y y2 permiten definir el vector del degradé. Este vector ofrece los puntos de inicio y final utilizados por el motor de renderización. Debe pasar en este parámetro los porcentajes expresados en forma de radios (0...1).
A partir de la v14, puede pasar los parámetros inicioOffsetColor y finOffsetColor opcionales para definir el valor porcentual, respectivamente, del color inicial y el color final offset. Puede pasar un valor real <1, o un valor entre 0 y 100 para establecer el porcentaje, es decir, "0.1" y/o "10" se interpretan como el 10%.
Al pasar un valor negativo se interpreta como 0% para el parámetro inicioOffsetColor y un 100% para el parámetro finOffsetColor. Si pasa un valor > 100, se interpreta como 100%.
Dibujar 6 cuadrados donde cada uno utilice un servidor de pintura de degradé lineal que varia la rotación y dirección del vector de degradé:
$svg:=SVG_New
SVG_Define_linear_gradient($svg;"demoGradient_1";"red";"yellow")
SVG_New_rect($svg;10;10;90;90;0;0;"black";"url(#demoGradient_1)")
SVG_New_text($svg;"rotation = 0\rrotation = 180";50;40;"";-1;-1;Align center)
SVG_Define_linear_gradient($svg;"demoGradient_2";"red";"yellow";-180)
SVG_New_rect($svg;110;10;90;90;0;0;"black";"url(#demoGradient_2)")
SVG_New_text($svg;"rotation = -180";150;50;"";-1;-1;Align center)
SVG_Define_linear_gradient($svg;"demoGradient_3";"red";"yellow";45)
SVG_New_rect($svg;10;110;90;90;0;0;"black";"url(#demoGradient_3)")
SVG_New_text($svg;"rotation = 45";50;150;"";-1;-1;Align center)
SVG_Define_linear_gradient($svg;"demoGradient_4";"red";"yellow";-45)
SVG_New_rect($svg;110;110;90;90;0;0;"black";"url(#demoGradient_4)")
SVG_New_text($svg;"rotation = -45";150;150;"";-1;-1;Align center)
SVG_Define_linear_gradient($svg;"demoGradient_5";"red";"yellow";90)
SVG_New_rect($svg;10;210;90;90;0;0;"black";"url(#demoGradient_5)")
SVG_New_text($svg;"rotation = 90";50;250;"";-1;-1;Align center)
SVG_Define_linear_gradient($svg;"demoGradient_6";"red";"yellow";-90)
SVG_New_rect($svg;110;210;90;90;0;0;"black";"url(#demoGradient_6)")
SVG_New_text($svg;"rotation = -90";150;250;"";-1;-1;Align center)
//Guardar documento
SVG_SAVE_AS_TEXT($svg;"test.svg")
//Liberar memoria
SVG_CLEAR($svg)
Ejemplo utilizando los parámetros distanciaColorInicio y distanciaColorFin (añadidos en v14):
$Dom_node:=SVG_Define_linear_gradient($Dom_svg;"clicked";"black:50";"black:20";-90;"reflect";0;80)
dará la definición:
<linearGradient id="clicked spreadMethod="reflect x1="0" x2="0" y1="1" y2="0"> <stop offset="0%" stop-color="black" stop-opacity="0.5"/> <stop offset="80%" stop-color="black" stop-opacity="0.2"/> </linearGradient>
Este ejemplo ilustra el efecto de los parámetros iniciarOffsetColor y finOffsetColor:
$svg:=SVG_New
SVG_Define_linear_gradient($svg;"demoGradient_1";"red";"yellow";-180;"reflect")
SVG_New_rect($svg;10;10;90;90;0;0;"black";"url(#demoGradient_1)")
SVG_New_text($svg;"offset=0/100";50;50;"";-1;-1;Align center)
SVG_Define_linear_gradient($svg;"demoGradient_2";"red";"yellow";-180;"reflect";20;80)
SVG_New_rect($svg;110;10;90;90;0;0;"black";"url(#demoGradient_2)")
SVG_New_text($svg;"offset=20/80";150;50;"";-1;-1;Align center)
//Save document
SVG_SAVE_AS_TEXT($svg;"test2.svg")
//Free up memory
SVG_CLEAR($svg)
Producto: 4D
Tema: Estructura y definiciones
Número
65986
Creado por: Composant 4D SVG v11.3
Modificado: 4D v13
Modificado: 4D v14
4D SVG ( 4D v16)