(no version information, might be only in CVS)
SWFShape->addFill -- Adds a solid fill to the shape.
Description
void
swfshape->addfill ( int red, int green, int blue [, int a])
警告 |
本扩展模块是实验性的。该模块的行为,包括其函数的名称以及其它任何关于此模块的文档可能会在没有通知的情况下随 PHP 以后的发布而改变。我们提醒您在使用本扩展模块的同时自担风险。
|
void
swfshape->addfill ( SWFbitmap bitmap [, int flags])
警告 |
本扩展模块是实验性的。该模块的行为,包括其函数的名称以及其它任何关于此模块的文档可能会在没有通知的情况下随 PHP 以后的发布而改变。我们提醒您在使用本扩展模块的同时自担风险。
|
void
swfshape->addfill ( SWFGradient gradient [, int flags])
警告 |
本扩展模块是实验性的。该模块的行为,包括其函数的名称以及其它任何关于此模块的文档可能会在没有通知的情况下随 PHP 以后的发布而改变。我们提醒您在使用本扩展模块的同时自担风险。
|
swfshape->addfill() adds a solid fill to the shape's list
of fill styles. swfshape->addfill() accepts three different
types of arguments.
red, green, blue
is a color (RGB mode). Last parameter a is optional.
The bitmap argument is an swfbitmap() object.
The flags argument can be one
of the following values : SWFFILL_CLIPPED_BITMAP or SWFFILL_TILED_BITMAP.
Default is SWFFILL_TILED_BITMAP. I think.
The gradient argument is an swfgradient()
object. The flags argument can be one of the following values :
SWFFILL_RADIAL_GRADIENT or SWFFILL_LINEAR_GRADIENT. Default is
SWFFILL_LINEAR_GRADIENT. I'm sure about this one. Really.
swfshape->addfill() returns an swffill()
object for use with the swfshape->setleftfill()
and swfshape->setrightfill() functions
described below.
See also
swfshape->setleftfill() and
swfshape->setrightfill().
This simple example will draw a frame on a bitmap. Ah, here's another buglet in
the flash player- it doesn't seem to care about the second shape's bitmap's
transformation in a morph. According to spec, the bitmap should stretch
along with the shape in this example..
例子 1. swfshape->addfill() example
<?php
$p = new SWFMorph();
$b = new SWFBitmap("alphafill.jpg"); // use your own 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);
// these two have no effect! $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(); ?>
|
|