7-day free trial to lynda.com video training library.

What a year!

Justin | articles | Wednesday, December 31st, 2008

Well, 2008 was a pretty good year for us. We released a new animation (finally), put together a reel of previous work (finally), updated the ajarproductions.com main page (finally), and released about 20 (free) extensions.

Thanks to my Creatives Services dept. (my main job), I went to Flash Forward and Adobe MAX this year (both in San Francisco). I also attended Flash Camp in SF and picked up the ‘Most Useful’ award at the hackathon competition for my Combine Textfields extension. I met some great people at all three events.

Thanks to promotion by Chris Georgenes, Lee Brimelow, Keith Gilbert, Michael Ninness, Richard Galvan, Jen DeHaan, Tim Cole, and many others; our extensions picked up a huge amount of new web traffic. Thanks to Josh Carrollhach for his great suggestions as well.

Ajar webstats for 2008

Lesson: Provide something useful and people will visit your site. I always knew this, but I started the blog thinking that tutorials would be the thing that we offered most and at some point in the last year I got consumed with creating extensions.

Plans for 2009

We’ve got more extensions on the way. I’m planning to keep those free. I’ll be putting out a free desktop utility (built on AIR) in the first week or two. I’ve begun work on a commercial desktop application as well. Hopefully we’ll have some more tutorials and animation up as time allows.

Look for us in Chris Georgenes’ How to Cheat in Adobe Flash CS4, due out in April 2009.

Amy’s got and brand new computer and she’s picking up Flash rather quickly, so hopefully she’ll have some animation up in the next year.

Thanks for visiting us in 2008! Thanks to everyone who has commented with suggestions and words of support on the blog. Come back and see us in 2009.

Flasher Magazine

Justin | Flash,links | Wednesday, December 31st, 2008

Lee Brimelow has posted the first issue of his new online video series entitled Flasher Magazine. It’s one part entertainment, one part tutorial. If you like staying current on Flash topics, you’ll want to bookmark the site.

Source: The Flash Blog.

LiveHTTPHeaders Firefox Addon: See what’s being loaded into your page

Justin | links,Misc,tips | Wednesday, December 17th, 2008

A while back, someone tipped my off to the Activity Window in Safari. This window is fantastic if you doing Flash development and need to debug on a live website. It will show you any images, videos, XML files, or anything else that’s getting loaded into your page.

I’m a Firefox user, so I went looking for an add-on that would do the same thing in Firefox. While it’s not quite as organized (i.e., it isn’t structured in a tree menu like the Activity Window), the “generate” tab of livehttpheaders is a pretty close substitution.

Originally found on What Do I Know.

UPDATE:  As Tim notes below, Firebug also has this capability. It’s under the ‘net’ section of the Firebug window. You have to choose to enable this feature before you see anything.


New Ajar Productions Homepage (Finally!)

Justin | links,Misc | Monday, December 15th, 2008

I finally got around to putting up a new Ajar Productions homepage.

Ajar Homepage Screen Capture

It’s pretty minimal, but it’s better than a placeholder.

Easy (and Readable) Extendscript to JSFL Workflow

Justin | ExtendScript,Flash,jsfl,tips | Sunday, December 14th, 2008

Even though the original Adobe Creative Suite applications (Photoshop, Illustrator, InDesign) and the original Macromedia Studio applications (Flash, Fireworks, Dreamweaver) don’t speak the same language, they’re both versions of javascript. You can send code from Extendscript (used in PS, AI, ID) as a string to another Adobe application’s native scripting language, like Flash’s JSFL scripting language. The process of creating these strings is much like sending JSFL from Actionscript, long code strings have to be created. String assignments don’t take kindly to hard returns, so to make this code readable, the string containing the script can be broken into lines by appending using the += operator, similar to this pseudocode:

var codeString = "function myFunction() {";
codeString += "var myVar = 10;";
codeString += "for(var i=0; i < myVar; i++){";
codeString += " var newVar = i;";
codeString += "}";
codeString += "}";
sendStringToOtherLanguage(codeString);

While this is more readable than one string of text, it’s still a pain to edit. All code highlighting is lost. On top of that, you’re debugging across languages, so it slows testing even more. While working on a script recently I discovered a workflow that allows me to maintain code readability while working across multiple Adobe applications.
(more…)

Simon’s Cat

Justin | animation,links | Wednesday, December 10th, 2008

Started watching every short we could find by Simon Tofield after seeing this short on Cold Hard Flash.

New Extension: Send Colors from InDesign and Illustrator to Flash

Justin | design,ExtendScript,extensions,Flash,Illustrator,InDesign,tips | Friday, December 5th, 2008

Following the merge text extensions for Flash, Illustrator, and InDesign, Keith Gilbert wrote me wondering about getting swatch information from InDesign to Flash via XFL or by way of importing an Adobe Swatch Exchange (ASE) file into the Flash swatches panel. There are several stumbling blocks in the way of such an extension. First, finding a way for extendscript or JSFL to read the contents of an ASE file (which is not open source and not plaintext) proves to be quite difficult. Second, JSFL (the Flash scripting language) doesn’t have any access (currently) to the swatches panel.


BREAKING NEWS (12/6/08): I noticed that the new Kuler extension for Flash CS4 has an “add to swatches” button, and it actually adds swatches to the swatches panel. After some decompiling and a lot of detective work, I found an undocumented JSFL call that was added to CS4. The feature is undocumented for a reason: it sends encoded XML data, and if the data is faulty, it crashes Flash. I have a few test cases working and I’m confident that I can add it to this extension, so the swatches will go right in the Flash swatches panel, rather than onto the stage, though it will only work in CS4. Be on the lookout for an update in the next few days.

UPDATE (12/7/08): Updated to version 1.1.0. If you have Flash CS4, the swatches will now go right into your Flash Swatches panel. Hooray!

There does seem to be a lot usefulness to such an extension, since XFL creates a new workflow between InDesign and Flash, and the Illustrator importer for Flash is fantastic, but neither one loads any of the swatches from the original document. I’ve certainly spent my fair share of time opening up the swatch properties, making sure the swatch is RGB or hex and copying all three fields one at a time.

So, I decided to plow ahead and see what I could come up with. The results are below. This extension takes the swatches from your current InDesign or Illustrator document and sends them to a new layer on the Flash stage. You can then use the eyedropper to pick up the colors, or you can add them to your swatches panel individually (similar to this demo of the Kuler panel).
UPDATE (12/7/08): If you have Flash CS4, you can skip the step above. Version 1.1.0 of this extension will send the Illustrator or InDesign swatches right to your swatches panel in Flash.

This extension will transfer spot and process colors of all varieties (RGB, CMYK, LAB, HSB). Rather than converting the CMYK with my own function, I used the applications themselves to convert the colors to RGB for Flash, so the transfer fidelity is quite good. It will ignore gradients, tints, patterns and fancy stuff like that. If you want to get your gradients into Flash see the bonus tip below.

InDesign to Flash CS4


Or, here’s what InDesign to Flash CS3 would look like.

Illustrator to Flash CS4


Or, here’s what Illustrator to Flash CS3 would look like.

Downloads and more below the fold. (more…)