Saltar para o conteúdo principal
Versão: 20 R8 BETA

WP SET ATTRIBUTES

WP SET ATTRIBUTES ( targetObj ; attribName ; attribValue {; attribName2 ; attribValue2 ; ... ; attribNameN ; attribValueN} )
WP SET ATTRIBUTES ( targetObj ; attribObj )

ParâmetroTipoDescrição
targetObjObjectRange or element or 4D Write Pro document
attribNameTextName of attribute to set
attribValueText, Number, Object, Collection, Picture, DateNew attribute value
attribObjObjectObject containing attribute names and their corresponding values to set

Descrição

The WP SET ATTRIBUTES command allows you to set the value of any attribute in a range, element, document. This command gives you access to any kind of 4D Write Pro internal attribute: character, paragraph, document, table, or image.

In targetObj, you can pass :

  • a range, or
  • an element (header / footer / body / table / row / paragraph / anchored or inline picture / section / subsection / style sheet), or
  • a 4D Write Pro document

You can specify attributes to set for targetObj in one of two ways:

  • Use the attribName and attribValue parameters. In attribName, pass the name of the attribute to set for the target and in attribValue, pass the new value to set. You can pass as many attribName/attribValue pairs as you want in a single call.

  • Use the attribObj parameter to pass a single object containing attribute names and their corresponding values as object properties.

For a comprehensive list of attributes to pass, as well as their scope and respective values, please refer to the 4D Write Pro Attributes section.

Exemplo 1

In this 4D Write Pro area, you selected a word:

Se executar o seguinte código:

 $range:=WP Get selection(*;"WParea") //get the selected range

// set the shadow offset in pt for the selected text
WP SET ATTRIBUTES($range;wk text shadow offset;1)
//set the paragraph padding
WP SET ATTRIBUTES($range;wk padding;1)
//define a border of 10 pt
WP SET ATTRIBUTES($range;wk border style;wk solid;wk border width;10)
//set the border colors
WP SET ATTRIBUTES($range;wk border color;"blue";wk border color bottom;"#00FA9A";wk border color right;"#00FA9A")

You get the following result:

Exemplo 2

This example illustrates the use of wk inside and wk outside constants:

 $wpRange:=WP Get selection(writeProdoc)
WP SET ATTRIBUTES($wpRange;wk border style+wk inside;wk dotted)
WP SET ATTRIBUTES($wpRange;wk border style+wk outside;wk solid)
WP SET ATTRIBUTES($wpRange;wk border color+wk outside;"#00FA9A")

Assuming all of the contents were selected, the result is:

Exemplo 3

You want to set a background image for the document:

 var WParea : Object
WParea:=WP New

READ PICTURE FILE("C:\\Pictures\\boats.jpg";$picture)

WP SET ATTRIBUTES(WParea;wk background image;$picture)

The result is:

You want to set a background image that covers the whole printable area. All attributes are passed using a single object:

 var WParea : Object
WParea:=WP New

READ PICTURE FILE("C:\\Pictures\\boats.jpg";$picture)

$myAttributes:=New object()
$myAttributes[wk background image]:=$picture
$myAttributes[wk background clip]:=wk paper box
$myAttributes[wk background origin]:=wk paper box

WP SET ATTRIBUTES(WParea;$myAttributes)

The result is:

nota

The paper box value is only applicable to documents and sections.

Exemplo

You want to set tabs at varying intervals and designate a character as the leading character for the last tab:

 $tab1:=New object()
$tab1[wk type]:=wk left
$tab1[wk offset]:="3cm"
$tab1[wk leading]:=""

$tab2:=New object()
$tab2[wk type]:=wk center
$tab2[wk offset]:="8cm"
$tab2[wk leading]:=""

$tab3:=New object()
$tab3[wk type]:=wk right
$tab3[wk offset]:="12cm"
$tab3[wk leading]:="."

$_tabs:=New collection($tab1;$tab2;$tab3)
WP SET ATTRIBUTES(wpArea;wk tabs;$_tabs)

The result is:

Veja também

4D Write Pro Attributes
WP GET ATTRIBUTES
WP RESET ATTRIBUTES