X-Git-Url: http://git.asbjorn.biz/?a=blobdiff_plain;ds=sidebyside;f=doc%2Fswfc.xml;h=50885c0e65ec7cbb43909a5688466b486d93056a;hb=e8b1cc9779e506d303090666994f936e66e8ea85;hp=a81bce3e48bbd139cf22ac8117e6172640cfba36;hpb=bf5eeb976135a8dee52de31507b9ba096905f472;p=swftools.git diff --git a/doc/swfc.xml b/doc/swfc.xml index a81bce3..50885c0 100644 --- a/doc/swfc.xml +++ b/doc/swfc.xml @@ -103,7 +103,7 @@ Boxes:
-.flash name="box.swf"
+.flash filename="box.swf"
.box b1 100 100 color=yellow fill=red
.put b1 pin=center scale=0%
.frame 100
@@ -154,7 +154,7 @@ The following example demonstrates a few of the possible transforms:
-.flash name="cxform.swf" version=5 fps=25
+.flash filename="cxform.swf" version=5 fps=25
.jpeg s1 "photo.jpeg" quality=80%
@@ -200,7 +200,7 @@ You now have a font named Arial to play with.
For example, for the obligatory hello world program:
-.flash name="helloworld.swf"
+.flash filename="helloworld.swf"
.font Arial filename="Arial.ttf"
.text helloworld font=Arial text="Hello World!"
@@ -258,7 +258,7 @@ objects which you can use in other commands.
-.flash name="fontoutline.swf"
+.flash filename="fontoutline.swf"
.font Arial "Arial.swf"
.textshape helloworld font=Arial size=200% text="Hello World"
.filled filled_helloworld outline=helloworld fill=blue line=3 color=green
@@ -273,7 +273,7 @@ To make this a little more interesting, let's fill with a gradient instead
of a plain color:
-.flash name="fontgradient.swf"
+.flash filename="fontgradient.swf"
.font Arial "Arial.swf"
.textshape helloworld font=Arial text="SHADE"
@@ -291,7 +291,7 @@ of a plain color:
While at it, you can also fill with an image:
-.flash name="fontimage.swf"
+.flash filename="fontimage.swf"
.font courier "Courier.swf"
.jpeg beach "beach.jpg"
.textshape text font=courier text="HOLIDAY"
@@ -307,12 +307,12 @@ with .text like normal shapes, i.e., scale them, move them, and use
them for clipping:
-.flash name="text5.swf"
+.flash filename="text5.swf"
.font courier "Courier.swf"
.text hithere text="HELLO" font=courier size=200%
.jpeg scenery "scenery.jpg"
-.frame 0
+.frame 1
.startclip hithere pin=center x=100 y=75 scale=50% #text clips...
.put scenery scale=50%
.end
@@ -326,7 +326,8 @@ them for clipping:
The last two examples look similar, but their underlying structure
is different: The first is a shape object filled with
image data (that is, a texture), while the second uses a normal
-text object to clip an rectangular image.
+text object to clip an rectangular image. (More about clipping in
+the next section)
@@ -337,12 +338,12 @@ which is used here together with the alpha parameter of .change :
-.flash name="text6.swf"
+.flash filename="text6.swf"
.font times "Times.swf"
.text hello text="HELLO" font=times size=100% color=blue
.text world text="WORLD" font=times size=100% color=red
-.frame 0
+.frame 1
.put hello pin=center x=50 y=50
.put world pin=center x=50 y=50 alpha=25%
.frame 200
@@ -353,6 +354,36 @@ which is used here together with the alpha parameter of .change :
+
+
+
+
+.flash filename="xorclip.swf" bbox=640x480 background=black version=6
+.font times "Times.swf"
+.textshape helloworld text="HELLO WORLD" font=times size=500%
+.filled helloworld1 outline=helloworld fill=blue line=0
+.filled helloworld2 outline=helloworld fill=green line=0
+
+.frame 1
+ .box background width=640 height=480 fill=white line=0
+ .sprite twotexts
+ .put h1=helloworld1 y=200
+ .put h2=helloworld2 y=200
+ .frame 1000
+ .change h1 x=-500
+ .change h2 x=-1000
+ .end
+
+ .startclip twotexts
+ .put background
+ .end
+.frame 1000
+.end
+
+
+
+
+
A special type of text in SWF is the edittext , which
@@ -361,7 +392,7 @@ and set from ActionScript (see below).
You can generate this type of text with the .edittext command:
-.flash name="edittext.swf" bbox=210x110
+.flash filename="edittext.swf" bbox=210x110
.font Arial "Arial.swf"
.edittext myedittext font=Arial size=20%
width=200 height=100
@@ -383,7 +414,7 @@ using .textshape . The other way to create outlines is to
use the .outline command:
-.flash name="house.swf"
+.flash filename="house.swf"
.outline house_outline:
M 36.99 29.93 L 15.52 51.39 L 20.44 51.39 L 20.44 81.91
@@ -420,7 +451,7 @@ Outlines can be filled with gradients, bitmaps etc., just like
seen previously with .textshape :
-.flash name="gradients.swf"
+.flash filename="gradients.swf"
.outline star:
M 521,640 C 502,678 370,546 328,554 C 270,566 152,731 93,722
@@ -472,8 +503,141 @@ seen previously with .textshape :
+
+
+
+The previous example demonstrated how to fill an outline with
+a gradient.
+
+
+
+There are two types of gradients: radial and linear. radial gradients
+have a center point and a radius (and are immune to rotations), and
+linear gradients have a start point and a width (or height) and can
+be rotated.
+
+
+gradients can be freely positioned inside the object
+you want to fill, by passing the x , y and width and height (or r ) parameters
+to .gradient .
+
+
+.flash filename="gradients2.swf"
+
+ .outline o:
+ moveTo -50,-50
+
+ lineTo 0,-45
+ lineTo 50,-50
+
+ lineTo 45,0
+ lineTo 50,50
+
+ lineTo 0,45
+ lineTo -50,50
+
+ lineTo -45,0
+ lineTo -50,-50
+ .end
+
+ .gradient horizon1 radial x=-50 y=-50 r=100:
+ 0% cyan
+ 49% blue
+ 50% green
+ 100% cyan
+ .end
+
+ .gradient horizon2 radial x=0 y=0 r=50:
+ 0% cyan
+ 49% blue
+ 50% green
+ 100% cyan
+ .end
+
+ .filled o1 outline=o fill=horizon1 line=0
+ .filled o2 outline=o fill=horizon2 line=0
+
+ .put o1 x=50 y=50
+ .put o2 x=150 y=50
+
+.end
+
+
+If you want to use a given gradient several times
+with different x and y values, you can also first
+define the gradient itself, and then position it with .texture:
+
+
+.flash filename="gradients3.swf"
+
+ # same outline as above, only in more terse notation
+ .outline o:
+ M -50,-50
+ L 0,-45 L 50,-50
+ L 45,0 L 50,50
+ L 0,45 L -50,50
+ L -45,0 L -50,-50
+ .end
+
+ .gradient horizon radial:
+ 0% cyan
+ 50% blue
+ 50% green
+ 100% cyan
+ .end
+
+ .texture horizon1=horizon x=-50 y=-50 r=100
+ .filled o1 outline=o fill=horizon1 line=0
+ .put o1 x=50 y=50
+
+ .texture horizon2=horizon x=0 y=0 r=50
+ .filled o2 outline=o fill=horizon2 line=0
+ .put o2 x=150 y=50
+
+ .texture horizon3=horizon x=0 y=50 r=10
+ .filled o3 outline=o fill=horizon3 line=0
+ .put o3 x=50 y=150
+
+ .texture horizon4=horizon x=50 y=50 r=200
+ .filled o4 outline=o fill=horizon4 line=0
+ .put o4 x=150 y=150
+
+ .gradient bunt:
+ 0% black
+ 20% blue
+ 40% magenta
+ 60% orange
+ 80% cyan
+ 100% white
+ .end
+
+ .texture bunt1=bunt x=-50 y=-50 width=100
+ .filled oo1 outline=o fill=bunt1 line=0
+ .put oo1 x=50 y=250
+
+ .texture bunt2=bunt x=-50 y=-50 width=141 height=141 rotate=45
+ .filled oo2 outline=o fill=bunt2 line=0
+ .put oo2 x=150 y=250
+
+ .texture bunt3=bunt x=-50 y=50 width=141 height=141 rotate=-45
+ .filled oo3 outline=o fill=bunt3 line=0
+ .put oo3 x=50 y=350
+
+ .texture bunt4=bunt x=50 y=50 width=100 rotate=180
+ .filled oo4 outline=o fill=bunt4 line=0
+ .put oo4 x=150 y=350
+
+.end
+
+
+
+
+
+
+
+
@@ -483,23 +647,23 @@ seen previously with .textshape :
the ActionScript into the block:
-.flash name="action.swf" bbox=300x300 fps=50
+.flash filename="action.swf" bbox=300x300 fps=50
.box mybox color=blue fill=green width=100 height=100
.put mybox
-.frame 0
+.frame 1
.action:
_root.angle += 0.05;
mybox._x = 100*Math.cos(_root.angle)+100;
mybox._y = 100*Math.sin(_root.angle)+100;
.end
-.frame 1
+.frame 2
.action:
gotoFrame(0);
Play();
.end
-.frame 2
+.frame 3
.end
@@ -530,7 +694,7 @@ mouse buttons, and key presses.
The following is a trivial example: Four objects which change their shape
once the cursor is over it.
-.flash name="button1.swf" fps=50
+.flash filename="button1.swf" fps=50
.box box1 color=white fill=#336633 width=50 height=50
.box box2 color=white fill=#99cc99 width=100 height=100
@@ -539,7 +703,7 @@ once the cursor is over it.
.show box2 as=hover x=12.5 y=12.5
.end
-.frame 0
+.frame 1
.put b1=mybutton1
.put b2=mybutton1 x=100 red=+255
.put b3=mybutton1 y=100 green=+255
@@ -583,7 +747,7 @@ Due to the fact that button shapes can be put anywhere especially
outside the active area, it's easy to generate tooltips or subtitles.
-.flash name="tooltips.swf" fps=50
+.flash filename="tooltips.swf" fps=50
.jpeg pic fence.jpg
.put pic
@@ -601,7 +765,7 @@ outside the active area, it's easy to generate tooltips or subtitles.
.show tooltip_fence as=idle x=25 y=25 scalex=100 scaley=100 alpha=50%
.end
-.frame 0
+.frame 1
.put mybutton1
.end