PHP Velho Oeste 2024

SWFShape::setLine

(PHP 5 < 5.3.0, PECL ming SVN)

SWFShape::setLineDéfinit le style de la forme d'une ligne

Description

SWFShape::setLine ( SWFShape $shape ) : void
setLine ( int $width , int $red , int $green , int $blue [, int $a ] ) : void
Avertissement

Cette fonction est EXPERIMENTALE. Le comportement de cette fonction, son nom, et toute la documentation autour de cette fonction peut changer sans préavis dans une prochaine version de PHP. Cette fonction doit être utilisée à vos risques et périls.

swfshape::setline() définit le style de la forme d'une ligne. width est l'épaisseur de la ligne. Si width vaut 0, le style de la ligne est effacé (alors, tous les autres arguments sont ignorés). Si width est supérieur à 0, alors la couleur de la ligne est définie à red, green, blue. Le dernier paramètre, a, est optionnel.

Vous devez déclarer tous les styles de ligne avant de les utiliser (voir l'exemple).

Valeurs de retour

Aucune valeur n'est retournée.

Exemples

Cet exemple simple va dessiner un gros "!#%*@".

Exemple #1 Exemple avec swfshape::setline()

<?php
$s 
= new SWFShape();
$f1 $s->addFill(0xff00);
$f2 $s->addFill(0xff0x7f0);
$f3 $s->addFill(0xff0xff0);
$f4 $s->addFill(00xff0);
$f5 $s->addFill(000xff);

// bogue : nous devons déclarer tous les styles de ligne avant de les utiliser
$s->setLine(400x7f00);
$s->setLine(400x7f0x3f0);
$s->setLine(400x7f0x7f0);
$s->setLine(4000x7f0);
$s->setLine(40000x7f);

$f = new SWFFont('Techno.fdb');

$s->setRightFill($f1);
$s->setLine(400x7f00);
$s->drawGlyph($f'!');
$s->movePen($f->getWidth('!'), 0);

$s->setRightFill($f2);
$s->setLine(400x7f0x3f0);
$s->drawGlyph($f'#');
$s->movePen($f->getWidth('#'), 0);

$s->setRightFill($f3);
$s->setLine(400x7f0x7f0);
$s->drawGlyph($f'%');
$s->movePen($f->getWidth('%'), 0);

$s->setRightFill($f4);
$s->setLine(4000x7f0);
$s->drawGlyph($f'*');
$s->movePen($f->getWidth('*'), 0);

$s->setRightFill($f5);
$s->setLine(40000x7f);
$s->drawGlyph($f'@');

$m = new SWFMovie();
$m->setDimension(3000,2000);
$m->setRate(12.0);
$i $m->add($s);
$i->moveTo(1500-$f->getWidth("!#%*@")/21000+$f->getAscent()/2);

header('Content-type: application/x-shockwave-flash');
$m->output();
?>

Valeurs de retour

Aucune valeur n'est retournée.

add a note add a note

User Contributed Notes 1 note

up
0
Brad
12 years ago
Just wanted to point out that a $width value of 0 does _not_ prevent the line from being drawn.  It causes a non-scaling, single pixel line to be drawn.  This is analogous to the way this is handled in ActionScript (see http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/display/Graphics.html#lineStyle%28%29)

If you do not want a line to be drawn at all, use NAN for $width instead of zero.
To Top