views:

537

answers:

3

Occassionally, when I'm working on an application in the Flash CS3 IDE, that uses very small fonts, I find that I get better results if I use device fonts rather than anti-aliased fonts.

However, I notice that SOMETIMES, if a save an FLA that uses "Static" Text fields with the "Use Device Font" setting, the next time I open Flash to edit the file, all of those fields have been changed to "Anti-alias for animation."

This is hugely frustrating... I typically have to go through my entire FLA and manually reset every static text field back to "Use Device Fonts".

Many thanks in advance for any advice or insight.
Cheers, Matt

+1  A: 

Hi Matt,

Problem solved. I've written a JSFL script that changes all textfields with "Anti-alias for animation" back to "Use device fonts". This restores your FLA back to its normal state, and you DON'T have to manually change "Device fonts" anymore. Phew! You can run this within the Flash CS3/CS4 IDE itself.

Features:

  • Searches within all scenes, and all their contents
  • Searches within all library items, to find clips not used in a scene
  • Searches within all groups (Flash CS4 only)
  • Only changes "Anti-alias for animation" textfields
  • Preserves textfields with "Custom" or "Anti-alias for readability"

Download JSFL script - Update: Massively improved performance, re-download.

Usage:

  • Copy the script to the Commands folder, and Restart your Flash IDE
    • Windows XP: C:/Documents and Settings/USERNAME/Local Settings/Application Data/Adobe/Flash CS3/en/Configuration/
    • *Windows Vista/7: C:\Users\USERNAME\AppData\Local\Adobe\Flash CS3\en\Configuration\Commands*
  • Open your FLA file and under the Commands menu, run "_Change AntiAnim to DeviceFonts"
  • Warning: This may take a few minutes to process.

Cheers, Jeremy.

Jenko
Jeremy, many thanks for this! It's an elegant, efficient solution. The only shortcoming (and it's a minor one), is that, in some applications, I prefer to use a combination of device and anti-aliased fonts (e.g., device fonts for small text, and anti-aliased style for larger fonts). This script requires me to choose an all-or-nothing approach. I wish I knew why CS3 can't maintain the settings I selected... Anyway, thanks again for this great solution!
mattstuehler
Oh thats an issue that has been already addressed. I use a combination of device fonts and antialaised fonts in my apps too, by setting bigger text to "Anti-alias for readability" which is more suitable for bigger text anyways. The script does *not* revert such textfields to device fonts, and so you can use it freely without worry!
Jenko
mattstuehler
A: 

Hi Jeremy

I've run your script and get the following error:

At line 91 of file "_Change AntiAnim to DeviceFonts": TypeError: tl.layers[t].frames[f] has no properties

Tested on both cs3 & 4, is this something you've come across?

Karol Moran
A: 

Hi Jeremy, thank you very much for your extremely helpful solution to this problem.

I ran into exact the same problem like Karol ("TypeError: tl.layers[t].."). It seems to me, that this is related to Layers having the "Folder-Property". After removing all Folder-Layers from the timeline, I could use your command without problems.

Maybe you could modify your script to avoid this problem? I´m not sure how to do it myself.

Thanks again!

Dennis Helfensteller