4D v16

SVG_DEFINE_STYLE_WITH_ARRAYS

Página Inicial

 
4D v16
SVG_DEFINE_STYLE_WITH_ARRAYS

SVG_DEFINE_STYLE_WITH_ARRAYS 


 

SVG_DEFINE_STYLE_WITH_ARRAYS ( svgObject ; pontArraysNom ; pontArraysVal {; className {; tipo {; media {; titulo}}}} ) 
Parâmetro Tipo   Descrição
svgObject  Ref_SVG in Referencia do objeto SVG
pontArraysNom  Ponteiro in Ponteiro ao array dos nomes de estilos
pontArraysVal  Ponteiro in Ponteiro ao array dos valores de estilos
className  Texto in Nome da classe do estilo CSS
tipo  Texto in Tipo do conteúdo
media  Texto in Descritor de média
titulo  Texto in Nome do estilo

O comando SVG_DEFINE_STYLE_WITH_ARRAYS define os estilos do objeto SVG (utilizando arrays) designado pelo parâmetro objetoSVG.

  • Se o parâmetro objetoSVG designa o elemento raíz, os estilos se definem como elementos "style" incluídos na seção "defs" (Internal Style Sheet). Neste caso, o parâmetro nomclass é obrigatório (se falta, devolve um erro). Depois pode atribuir a folha de estilo className aos objetos SVG passando seu nome ao método SVG_SET_CLASS (ver o exemplo 1). 
  • Se o parâmetro objetoSVG designa um elemento SVG diferente ao elemento raíz, o estilo está definido como um atributo de estilo para este elemento (Inline Style Sheet) (ver exemplo 2).

O parâmetro opcional tipo especifica a linguagem da folha de estilo do conteúdo do elemento. O valor por padrão é "text/css".

O parâmetro opcional media indica a média de destino para a informação de estilo. Se omitido este parâmetro, o valor por padrão utilizado é "all". Se o valor não está incluído na lista de médias reconhecidas por CSS2, é gerado um erro.

O parâmetro opcional titulo agrega um atributo de tipo "title".

Exemplo de definição de estilos internos:

 ARRAY TEXT($arrnames;0)
 ARRAY TEXT($arrvalues;0)
 APPEND TO ARRAY($arrnames;"fill")
 APPEND TO ARRAY($arrvalues;"black")
 APPEND TO ARRAY($arrnames;"font-family")
 APPEND TO ARRAY($arrvalues;"'Lucida Grande' Verdana")
 APPEND TO ARRAY($arrnames;"font-size")
 APPEND TO ARRAY($arrvalues;"20px")
 APPEND TO ARRAY($arrnames;"text-align")
 APPEND TO ARRAY($arrvalues;"center")
 
 $svg:=SVG_New
 SVG_DEFINE_STYLE_WITH_ARRAYS($svg;->$arrnames;->$arrvalues;"title")
 $object:=SVG_New_textArea($svg;"Hello World!";10;10;200;310)
 SVG_SET_CLASS($object;"title")

Este método gera o seguinte código:

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<svg xmlns="http://www.w3.org/2000/svg">
    <defs id="4D">
        <style type="text/css">.title{fill:red;font-family:'Lucida Grande' Verdana;font-size:20px;text-align:center;}</style>
    </defs>
    <textArea class="title" height="310" width="200" x="10" y="10">Hello World!</textArea>
</svg>

Exemplo de definição de estilos inline:

 ARRAY TEXT($arrnames;0)
 ARRAY TEXT($arrvalues;0)
 APPEND TO ARRAY($arrnames;"fill")
 APPEND TO ARRAY($arrvalues;"black")
 APPEND TO ARRAY($arrnames;"font-family")
 APPEND TO ARRAY($arrvalues;"'Lucida Grande' Verdana")
 APPEND TO ARRAY($arrnames;"font-size")
 APPEND TO ARRAY($arrvalues;"20px")
 APPEND TO ARRAY($arrnames;"text-align")
 APPEND TO ARRAY($arrvalues;"center")
 
 $svg:=SVG_New
 $object:=SVG_New_textArea($svg;"Hello World!";10;10;200;310)
 SVG_DEFINE_STYLE_WITH_ARRAYS($object;->$arrnames;->$arrvalues)

Este método gera o seguinte código:

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<svg xmlns="http://www.w3.org/2000/svg">
    <textArea height="310" style="fill:red;font-family:'Lucida Grande' Verdana;font-size:20px;text-align:center;" width="200" x="10" y="10">Hello World!</textArea>
</svg>

 
PROPRIEDADES 

Produto: 4D
Tema: Estrutura e definições
Número 65871

 
HISTÓRIA 

Criado por: 4D v13

 
ARTICLE USAGE

4D SVG ( 4D v16)