SWFShape->addFill()

(PHP 5)

SWFShape->addFill() — Ajoute un motif solide à la forme

Description

class SWFShape {
SWFFill addFill ( int $red, int $green, int $blue [, int $a] )
SWFFill addFill ( SWFBitmap $bitmap [, int $flags] )
SWFFill addFill ( SWFGradient $gradient [, int $flags] )
}
AVERTISSEMENT

Cette fonction est EXPERIMENTALE . Cela signifie que le comportement de cette fonction, son nom et, concrètement, TOUT ce qui est documenté ici peut changer dans un futur proche, SANS PREAVIS ! Soyez-en conscient, et utilisez cette fonction à vos risques et périls.

SWFShape->addFill() ajoute un motif solide à la liste des styles de la forme. SWFShape->addFill() accepte trois types différents d'arguments.

red , green , blue est une couleur (en mode RVB). Le dernier paramètre a est optionnel.

L'argument bitmap est un objet SWFBitmap() . L'argument flags peut être une valeur parmis : SWFFILL_CLIPPED_BITMAP, SWFFILL_TILED_BITMAP, SWFFILL_LINEAR_GRADIENT ou SWFFILL_RADIAL_GRADIENT. Par défaut, vaut SWFFILL_TILED_BITMAP pour SWFBitmap et SWFFILL_LINEAR_GRADIENT pour SWFGradient.

L'argument gradient est un objet SWFGradient() . L'argument flags peut être une valeur parmis : SWFFILL_RADIAL_GRADIENT ou SWFFILL_LINEAR_GRADIENT. Par défaut, vaut SWFFILL_LINEAR_GRADIENT.

SWFShape->addFill() retourne un objet SWFFill() pour l'utiliser avec la fonction SWFShape->setLeftFill() et la fonction SWFShape->setRightFill() .

Exemples

Cet exemple trace une frame dans un bitmap.

Exemple 1496. Exemple avec SWFShape->addFill()

<?php

$p 
= new  SWFMorph ();

$b  = new  SWFBitmap ( file_get_contents ( "alphafill.jpg" ));
// utilisez votre propre bitmap
$width  $b -> getWidth ();
$height  $b -> getHeight ();

$s  $p -> getShape1 ();
$f  $s -> addFill ( $b SWFFILL_TILED_BITMAP );
$f -> moveTo (- $width / 2 , - $height / 4 );
$f -> scaleTo ( 1.0 0.5 );
$s -> setLeftFill ( $f );
$s -> movePenTo (- $width / 2 , - $height / 4 );
$s -> drawLine ( $width 0 );
$s -> drawLine ( 0 $height / 2 );
$s -> drawLine (- $width 0 );
$s -> drawLine ( 0 , - $height / 2 );

$s  $p -> getShape2 ();
$f  $s -> addFill ( $b SWFFILL_TILED_BITMAP );

// Ceci n'a pas d'effet !
$f -> moveTo (- $width / 4 , - $height / 2 );
$f -> scaleTo ( 0.5 1.0 );

$s -> setLeftFill ( $f );
$s -> movePenTo (- $width / 4 , - $height / 2 );
$s -> drawLine ( $width / 2 0 );
$s -> drawLine ( 0 $height );
$s -> drawLine (- $width / 2 0 );
$s -> drawLine ( 0 , - $height );

$m  = new  SWFMovie ();
$m -> setDimension ( $width $height );
$i  $m -> add ( $p );
$i -> moveTo ( $width / 2 $height / 2 );

for (
$n = 0 $n < 1.001 $n += 0.03 ) {
    
$i -> setRatio ( $n );
    
$m -> nextFrame ();
}

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

Voir aussi

SWFShape->setLeftFill()
SWFShape->setRightFill()