4D v15

SVG_Define_filter

  •  
 
4D v15
SVG_Define_filter

SVG_Define_filter 


 

SVG_Define_filter ( parentSVGObject ; id {; frameX ; frameY {; frameWidth ; frameHeight {; frameUnit ; filterUnit}}}} ) -> 戻り値 
引数   説明
parentSVGObject  SVG_Ref in 親要素の参照
id  文字 in シンボル名
frameX  倍長整数 in X軸の座標
frameY  倍長整数 in Y軸の座標
frameWidth  倍長整数 in ターゲットの四角の幅
frameHeight  倍長整数 in ターゲットの四角の高さ
frameUnit  文字 in フレームの座標系
filterUnit  文字 in 値のフィルター系
戻り値  SVG_Ref in フィルターの参照

The SVG_Define_filter command sets a new filter in the SVG container designated by parentSVGObject and returns its reference. If parentSVGObject is not an SVG document, an error is generated.

A filter is a succession of graphic operations that will be applied to the target element. The filter element is never rendered directly; it will be applied to an object using the SVG_SET_FILTER command.

The id parameter specifies the name of the marker. The name will be used to associate a filter with an object. If an element with the same name exists, it will be replaced.

The optional frameX, frameY, frameWidth and frameHeight parameters set a rectangular region in the document to which this filter will be applied.

The optional frameUnit parameter sets the coordinate system for the 4 previous parameters. Expected values: "userSpaceOnUse" or "objectBoundingBox" (default value).

The optional filterUnit parameter sets the coordinate system for the lenths and the filter definition properties. Expected values: "userSpaceOnUse" (default value) or "objectBoundingBox".

Example  

In this example, we want to perform the following operations:

  • create a rectangle with 50% blue background
  • create a 4% blur filter and apply it to this rectangle
  • save the result in an SVG file on disk.

 $Dom_SVG:=SVG_New
 
  //creation of a rectangle with 50% blue background
 $Dom_rect:=SVG_New_rect($Dom_SVG;50;50;50;50;0;0;"blue:50";"blue:50")
 
  //creation of 4% blur filter
 $Dom_filter:=SVG_Define_filter($Dom_SVG;"blur")
 SVG_Filter_Blur($Dom_filter;4)
 SVG_Filter_Offset($Dom_filter;4)
 
  //application of this filter to the rectangle
 SVG_SET_FILTER($Dom_rect;"blur")
 
  //saving result in an SVG file
 SVG_SAVE_AS_TEXT($Dom_SVG;System folder(Desktop)+"test.svg")
 
 SVG_CLEAR($Dom_SVG)

Result:



参照 

SVG_Filter_Blend
SVG_Filter_Blur
SVG_Filter_Offset
SVG_SET_FILTER