4D v16

SVG_Filter_Blend

Inicio

 
4D v16
SVG_Filter_Blend

SVG_Filter_Blend 


 

SVG_Filter_Blend ( refFiltro ; imagen ; imagenFondo {; modo {; nombre}} ) -> Resultado 
Parámetro Tipo   Descripción
refFiltro  Ref_SVG in Referencia de filtro
imagen  Cadena in Imagen fuente
imagenFondo  Cadena in Imagen de fondo fuente
modo  Cadena in Modo de mezcla
nombre  Cadena in Objetivo de la primitiva de filtro
Resultado  Ref_SVG in Referencia de la primitiva

El comando SVG_Filter_Blend define un filtro de composición para el filtro refFiltro y devuelve su referencia. Si refFiltro no es una referencia de filtro, se genera un error.

Este filtro se compone de dos fuentes, imagenFondo e imagen, con la ayuda de los modos de mezcla que utiliza actualmente el software de imágenes.

El parámetro opcional modo permite definir el modo de combinación de los píxeles utilizados para la mezcla (ver la especificación). Su valor debe ser: "normal" (valor por defecto), "multiply", "screen", "darken" o "lighten".

El parámetro opcional nombre es el nombre asignado al resultado de esta primitiva de filtro.

Nota: a partir de 4D v14 R5, este comando funciona en Windows con Direct2D activado en modo software (ver la constante Direct2D disabled en la descripción del comando SET DATABASE PARAMETER).

Ejemplo  

En un formulario, mostramos dos imágenes SVG idénticas, luego creamos un filtro "blend" y lo asignamos a la derecha. Este filtro es una combinación de los filtros  "offset" y "blur":

 $root:=SVG_New(400;400;"filters test") //definición de la primera imagen (izquierda)
 $rect:=SVG_New_rect($root;10;10;380;100;0;0;"darkblue";"white";1)
 SVG_SET_FILL_BRUSH($root;"orange")
 $textAreaRef:=SVG_New_textArea($root;"Hello World!";10;10;380;100;"arial";60;Normal;Align center)
 <>pict1:=SVG_Export_to_picture($root//visualización de la primera imagen
 
 $root2:=SVG_New(400;400;"filters test") //definición de la imagen derecha idéntica
 
  //creación del filtro
 $filter:=SVG_Define_filter($root2;"MyShadow")
 $vGraph:=True //aplicación de la capa gráfica - pase False para aplicar la capa alpha
 If($vGraph)
    $ref1:=SVG_Filter_Blur($filter;2;"sourceGraphic";"blurResult") //"blurResult" se utilizará como "entrada" del filtro offset
 Else
    $ref1:=SVG_Filter_Blur($filter;2;"sourceAlpha";"blurResult") //"blurResult" se utilizará como "input" del filtro offset
 End if
  //Adición del filtro offset
 $ref2:=SVG_Filter_Offset($filter;5;5;"blurResult";"alphaBlurOffset")
  //Adding blend filter
 $ref3:=SVG_Filter_Blend($filter;"sourceGraphic";"alphaBlurOffset";"normal";"finalFilter";)
 
 $rect2:=SVG_New_rect($root2;10;10;380;100;0;0;"darkblue";"white";1)
 SVG_SET_FILL_BRUSH($root2;"orange")
 $textAreaRef2:=SVG_New_textArea($root2;"Hello World!";10;10;380;100;"arial";60;Normal;Align center)
 
 SVG_SET_FILTER($textAreaRef2;"MyShadow") //aplicación del filtro final
 <>pict2:=SVG_Export_to_picture($root2//visualización de la segunda imagen

Result (blur input filter = sourceGraphic) :

Result (blur input filter = sourceAlpha) :



Ver también 

SVG_Filter_Blur
SVG_Filter_Offset

 
PROPIEDADES 

Producto: 4D
Tema: Filtros
Número 65923

Comportamiento específico bajo Windows

 
HISTORIA 

Creado por: Composant 4D SVG v11.3
Modificado: 4D v14 R5

 
ARTICLE USAGE

4D SVG ( 4D v16)