1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145
|
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision: 1.6 $ -->
<!-- splitted from ./en/functions/ming.xml, last change in rev 1.24 -->
<refentry id="function.swfshape.addfill">
<refnamediv>
<refname>SWFShape->addFill</refname>
<refpurpose>Adds a solid fill to the shape</refpurpose>
</refnamediv>
<refsect1>
<title>Description</title>
<methodsynopsis>
<type>SWFFill</type><methodname>SWFShape->addFill</methodname>
<methodparam><type>int</type><parameter>red</parameter></methodparam>
<methodparam><type>int</type><parameter>green</parameter></methodparam>
<methodparam><type>int</type><parameter>blue</parameter></methodparam>
<methodparam choice="opt"><type>int</type><parameter>a</parameter></methodparam>
</methodsynopsis>
<methodsynopsis>
<type>SWFFill</type><methodname>SWFShape->addFill</methodname>
<methodparam><type>SWFBitmap</type><parameter>bitmap</parameter></methodparam>
<methodparam choice="opt"><type>int</type><parameter>flags</parameter></methodparam>
</methodsynopsis>
<methodsynopsis>
<type>SWFFill</type><methodname>SWFShape->addFill</methodname>
<methodparam><type>SWFGradient</type><parameter>gradient</parameter></methodparam>
<methodparam choice="opt"><type>int</type><parameter>flags</parameter></methodparam>
</methodsynopsis>
&warn.experimental.func;
<para>
<function>SWFShape->addFill</function> adds a solid fill to the shape's list
of fill styles. <function>SWFShape->addFill</function> accepts three different
types of arguments.
</para>
<para>
<parameter>red</parameter>, <parameter>green</parameter>, <parameter>blue</parameter>
is a color (RGB mode). Last parameter <parameter>a</parameter> is optional.
</para>
<para>
The <parameter>bitmap</parameter> argument is an <function>SWFBitmap</function> object.
The <parameter>flags</parameter> argument can be one
of the following values: SWFFILL_CLIPPED_BITMAP, SWFFILL_TILED_BITMAP,
SWFFILL_LINEAR_GRADIENT or SWFFILL_RADIAL_GRADIENT. Default is
SWFFILL_TILED_BITMAP for SWFBitmap and SWFFILL_LINEAR_GRADIENT for
SWFGradient.
</para>
<para>
The <parameter>gradient</parameter> argument is an <function>SWFGradient</function>
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.
</para>
<para>
<function>SWFShape->addFill</function> returns an <function>SWFFill</function>
object for use with the <function>SWFShape->setLeftFill</function>
and <function>SWFShape->setRightFill</function> functions
described below.
</para>
<para>
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..
<example>
<title><function>SWFShape->addFill</function> example</title>
<programlisting role="php">
<![CDATA[
<?php
$p = new SWFMorph();
$b = new SWFBitmap(file_get_contents("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();
?>
]]>
</programlisting>
</example>
</para>
<simpara>
See also
<function>SWFShape->setLeftFill</function> and
<function>SWFShape->setRightFill</function>.
</simpara>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"../../../../manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->
|