Friday, June 27, 2008

More on: Flash Player 10 Beta Development Without Installing Anything

 

I have now built an HTML page containing my FontWheels Flash Player 10 Beta Demo which is only useful if you have installed Flash Player 10 beta.

However, to summarize my previous post, you may view Flash Player 10 Beta content without installing anything if you fear impacting your system with beta installables.  This can be done by downloading the external Flash Player 10 beta: FlashPlayer.exe.

This is not an install executable.  It is the stand-alone external player and requires no installation.  To view content on the player, execute FlashPlayer.exe and enter the URL from the File/Open menu.  The URL to my swf demo is:

http://www.elegantfloraldesigns.us/blogstuff/FontWheels/FontWheels.swf

Thursday, June 26, 2008

Flash Player 10 Beta Development Without Installing Anything

I wrote some ActionScript 3 code to try some of the new features in the Adobe Flash Player 10 beta and became so excited about it I can't put it down.

I have a demo, FontWheels, with some explanation below but first let me tell you how I build the swf.

I had some problems getting started and still haven't work out some basic things. Fortunately, by accident, I found a way to do beta develop without having to install anything on my Windows XP machine.  At least to the best of my knowledge I didn't install anything and I can still use my Flex Builder 2 and Flash Debugger 9 with no conflicts.

I initially tried following the instructions from Adobe about installing Flash Player 10 and the SDK. I was able to get it installed and ran through their examples and tutorials just fine. However I wasn't able to get it to work with Flex Builder 2 and then I started having problems trying to resume developing for Flash Player 9 with the debugger.

I ended up removing everything (except the new SDK) and reinstalling Flex Builder 2 with the current debug player. I'm not trying to discourage anyone from doing this. I'm sure I goofed somewhere.

But I thought I'd give it one more shot and by accident came up with something acceptable and as I said nothing needs to be installed.

I ended up using the FlashDevelop version for FP10 from www.FlashDevelop.org. which for some reason is distributed as a compressed file with the rar extension. This gave me some problems coming up with something that worked with rar files instead of zip. However I eventually decompressed it. I created a shortcut on my desktop to the FlashDevelop.exe in the decompressed files and double clicked on the shortcut. Sure enough, FlashDevelop ran without any install.

However I still need Flash Player 10 but found out I could use the external Flash Player 10 beta instead of the versions for embedding into a browser. In the support page for FP10 at www.FlashDevelop.org there is a link to the standalone content debugger ("External player"):

http://opensource.adobe.com/svn/opensource/flex/sdk/trunk/in/player/10/win/

The external player requires no installation. (Note this is for Windows.)

Next in the FlashDevelop Project\Properties menu I had to change the Target to Flash Player 10 and Test Player to “Play in external player”.

Now I'm not sure how FlashDevelop knew where to find the standalone Flash Player and I'm not sure how it found the Flash Player 10 SDK. I was unable to follow their instructions to set up the SDK path but it ran anyway. I previously placed the SDK on my C: drive as C:\FLEX_SDK\ and edited C:\FLEX_SDK\frameworks\flex-config.xml according to the alternative directions from Adobe as follows:

...

<target-player>10.0.0</target-player>

...

<external-library-path>

<path-element>libs/player/{targetPlayerMajorVersion}/playerglobal.swc</path-element>

</external-library-path>

...

<library-path>

<path-element>libs</path-element>

<path-element>libs/player/{targetPlayerMajorVersion}</path-element>

<path-element>locale/{locale}</path-element>

</library-path>

FlashDevelop works quite well with the external player and handles the trace command just fine.  I had been using FlashDevelop until FlexBuilder came along but it has changed a lot since then.  It handles the new vector syntax of Flash 10.  The behavior of the code completion is different from Flex Builder.  I think Flex Builder is smoother but FlexDevelop tries to do more with code completion.  It seems to fail to “code complete” more frequently than Flex Builder and I find it mildly annoying because I have to use the escape key to get out of the code completion mode much too often.  In all fairness I haven't tried much customization to get rid of the annoyances and overall I like FlexDevelop.  It has a bunch of useful feature many of which I haven't mastered.  If I ever figure out how to make a living out of this I definitely plan on donating something for this product.

So here is my demo but you might have go through some hoops to see it.  Since I am using the external Flash 10 Player I don't have a way of testing a SWF within a web page. So if you want to see my demo, download the External Play Player 10 from the link mentioned above. Then in the menu File open enter the following:

http://www.elegantfloraldesigns.us/blogstuff/FontWheels/FontWheels.swf

Of course, if you are able to view Flash 10 content from your browser, you should be able to view the swf file by entering the above URL.  I’ve never seen it that way so I can only hope it runs.

 

FontWheels, the Flash 10 Beta Demo

I was working on  an ActionScript 3  for Player 9 project where I wanted to display characters around a circle dynamically.  I don’t like having to embed fonts so I thought I would see how bad it would be to first convert characters to a bitmap and then rotate them.  The result was far from perfect but since the size of the characters were fairly small it didn’t look as bad as I expected.  Certain letters, like “W” looked pretty bad but I decided I could live with it.  Since I first heard about Flash Player 10 beta while I was working on rotating the fonts I used that code as the starting place for testing the new player.

Using the exact code, that is first converting to bitmaps and the rotating, there was amazing improvement.  This wasn’t something I was anticipating.  I hadn’t read anything about the new player improving the results of rotating a bitmap, but there is no doubt it is a lot better.

Well, that created a lot of interest on my part so I decided to try rotating a TextField instead of a bitmap but still not embedding a font.  We let me tell you it looks a whole lot better than the bitmap.

Next I wondered what would it look like if I rotated the characters around the circle live.  My initial app was to build a static medallion with characters around a curve but I couldn’t resist seeing them rotate on the screen.  Then I wondered if I could do this will all of my device fonts.  Yes.  The player could handle displaying all of my approximately 110 device fonts on the screen rotating simultaneously.  Later on after trying it on my granddaughter’s older computer I decide it would be best to limit the total number of fonts.

Then I wanted to play with the 3D  capability.  I discovered that rotating each letter on another axis and the rotating the font wheel on another axis I could get what appears to be a circular marquee.

So there it is.  I hope you take the time to see it run.  I’ve rush this post out because I’m anxious to get back and try some other new things.  I hope I’m not leaving in too many misspellings and grammar errors but I’m in a hurry!