4D v14SVG_Filter_Blend |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v14
SVG_Filter_Blend
|
SVG_Filter_Blend ( refFiltro ; imagem ; imagemFundo {; modo {; nome}} ) -> Resultado | ||||||||
Parâmetro | Tipo | Descrição | ||||||
refFiltro | SVG_Ref |
![]() |
Referencia de filtro | |||||
imagem | cadeia |
![]() |
Imagem fonte | |||||
imagemFundo | cadeia |
![]() |
Imagem de fundo fonte | |||||
modo | cadeia |
![]() |
Modo de mistura | |||||
nome | cadeia |
![]() |
Objetivo da primitiva de filtro | |||||
Resultado | SVG_Ref |
![]() |
Referencia da primitiva | |||||
O comando SVG_Filter_Blend define um filtro de composição para o filtro refFiltro e devolve sua referencia. Se refFiltro não é uma referencia de filtro, é gerado um erro.
Este filtro é composto de duas fontes, imagemFundo e imagem, com a ajuda dos modos de mistura que utiliza atualmente o software de imagens.
O parâmetro opcional modo permite definir o modo de combinação de los píxels utilizados para a mistura (ver a especificação). Seu valor deve ser: "normal" (valor por padrão), "multiply", "screen", "darken" ou "lighten".
O parâmetro opcional nome é o nome atribuído ao resultado desta primitiva de filtro.
Nota: Sob Windows, este comando requer a desativação prévia de Direct2D (ver a constante Direct2D disabled na descrição do comando SET DATABASE PARAMETER).
Em um formulário, mostramos duas imagens SVG idênticas, logo criamos um filtro "blend" e o atribuímos a direita. Este filtro é uma combinação dos filtros "offset" e "blur":
$root:=SVG_New(400;400;"filters test") //definição da primeira imagem (esquerda)
$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) //visualização da primeira imagem
$root2:=SVG_New(400;400;"filters test") //definição da imagem direita idêntica
//criação do filtro
$filter:=SVG_Define_filter($root2;"MyShadow")
$vGraph:=True //aplicação da capa gráfica - passe False para aplicar a capa alpha
If($vGraph)
$ref1:=SVG_Filter_Blur($filter;2;"sourceGraphic";"blurResult") //"blurResult" será utilizada como "entrada" do filtro offset
Else
$ref1:=SVG_Filter_Blur($filter;2;"sourceAlpha";"blurResult") //"blurResult" será utilizada como "input" do filtro offset
End if
//Adição do filtro offset
$ref2:=SVG_Filter_Offset($filter;5;5;"blurResult";"alphaBlurOffset")
//Adição do filtro blend
$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") //aplicação do filtro final
<>pict2:=SVG_Export_to_picture($root2) //visualização da segunda imagem
Result (blur input filter = sourceGraphic):
Result (blur input filter = sourceAlpha):
Produto: 4D
Tema: Filtros
Número
65923
Criado por: Composant 4D SVG v11.3
SVG_Filter_Blur
SVG_Filter_Offset
4D SVG ( 4D v13)
4D SVG ( 4D v12)
4D SVG ( Composant 4D SVG v11.4)
4D SVG ( 4D v14 R2)
4D SVG ( 4D v14)
4D SVG ( 4D v14 R3)
4D SVG ( 4D v14 R4)