ActionScript 2.0 :: Shared Library Embed Fonts NOT WORKING
Apr 22, 2006
I wanted to separate my embedded fonts to save filesize, so i've put them into sharedLib.SWF, and then preloaded sharedLib.SWF into flash using another SWF so that i could use these fonts further in multiple FLAs, without consuming additional bandwidth. I followed one tutorial, and checked out many different ones, to see if this issue occured to somebody else too. I had no luck finding the solution. Furthermore, i want to embed these fonts into AS-created textfields using AS.[code]I tried to create 1 TF manually, and placed it on the Stage, setting its display text to one of the embedded texts (Tahoma*). This actually worked! And one more strange thing happened.. Three of those TFs created using actionsctript, which were before blank, were NOW also filled with correct embedded text, EXCEPT one textfield which used Tahoma text non-bold, non-italic [!?]. Now how does this happen, and why the exception, i wonder.
I have a question regarding flex and embed fonts , i want to have a library of embed fonts that will have about 30 different fonts Is there any way i can only load the fonts that i use? ( dynamicaly )
I am using Flash CS5 (assets) and FlashDevelop (code) for my project. We have about 20 fla/swf's that contain textfields. All of our textfields use the same Font, and the font is specific to our company so won't be installed on anyones computers, hence it needs to be embedded.
My ultimate goal is to have one single font embedded that all of the textfields use, for 2 main reasons:
Whenever we add more characters to the font (other languages), we only need to add them once and not 20 times The file size doesn't blow out dramatically
I'm having great difficulty in trying to achieve this. It seems that everything I try, characters are missing (only characters entered in the text property of the textfields in each fla seem to be embedded).
The latest solution I am trying is using Runtime Shared Libraries, as this seems like it should work. I have an fla called FNFont.fla. It contains just one object in the library, the embedded font. The font is exported to AS3, exported in frame 1 and exported for runtime sharing. The URL is FNFont.swf (all swf's are in the same folder).
In all the other fla's, I create the font object in font embedding. I tick Import for Runtime Sharing and give it the same class name as the one in FNFont.fla. The URL is FNFont.swf. The fla(s) contain many textfields using this font. The textfields have instances of themselves as children of other movieclips.
When I run the program and attempt to load a movieclip that contains an instance of one of these textfields, I get the error:
[Fault] exception, information=ReferenceError: Error #1065: Variable FontName is not defined.
FontName is the class name of the Font object in FNFont.fla and all other fla's. It is not the instance name of the textfield (nor the class name), so I don't understand how it thinks its a variable.
How do I embed fonts for dynamic text fields using actionscript without adding the font to the library? The text fields are created using actionscript, with a user-defined text format, whereas one of the properties the user defines is the font, hence the need for embedding the font without adding it to the library first.
How do I embed fonts for dynamic text fields using actionscript without adding the font to the library? The text fields are created using actionscript, with a user-defined text format, whereas one of the properties the user defines is the font, hence the need for embedding the font without adding it to the library first..
I'm trying to use the Shared Library process for the first time with audio files and I'm not sure why it's not working. I've followed both processes from here:[URL] and have a library file called libTestAudio.swf with all the audio files set up right (see Flash file here [URL] My question is should the testAudio.swf ever grow in file size? When it has no content it is at 4Kb but when it has the shared library file added to the timeline it becomes 8Kb. Now this might sound small but I've tried this with much longer pieces of audio and the file size does get bigger for testAudio.swf . I was thinking that only the libTestAudio.swf file would increase in file size and testAudio.swf would remain at it's 4Kb size. Am i wrong there?
But there is no change in the appearance of the Text whatsoever.. I need the text to be crisp and clear.Just like the way it looks when we embed the fonts using the Embed... Button in the Flash IDE.
I am working in two different applications, one to be compiled for desktop use (AIR) and one to be compiled for the web. They are part of the same project and use the same visual components, but they are completely different apps. When a visual component is changed in one application then it should also change in the other one. Is this a good situation to use a shared library fla? I am new to the concept of shared libraries and I am considering the options.
On one had I would not have to update 2 applications everytime I change something, on the other, I would always have to recompile the library folder when I do the smallest changes to a component.
I have a main.fla, in the library, i created two new fonts:
RegularFont and BoldFont.
And I found the following piece of code somewhere, which works fine!
[Code]...
In my actual project implementation, I have to host the fonts hosted in another swf. So I simply modified in this way:
Instead of declaring new font the in the main.fla, i imported the BigFont and RegularFont from another fonts.swf(dynamic fonts sharing) HERE COMES THE PROBLEM, THESE TWO LINES WONT COMPILE
[Code]...
Flash IDE is throwing this error:
1180: Call to a possibly undefined method RegularFont.
Is there any solution to dynamic fonts yet. I have tried to write classes and followed so much stuff on various blogs but none of them is working. For example, i'm using a font(which is not installed in most machines) say "abc" on my Input and other TextFields/Combos/Radio etc. Now no matter whatever i do, it uses some default font instead of "abc" if accessed from a PC in which this font isn't installed.
One (bad)solution is to embed fonts using the Embed button in "Properties" FOR EACH TEXT FIELd seperately and increase the file size? Still this way wouldn't work for Combos and radio Btns.
What I need to do to use an external style sheet? Should it be a style sheet or an mxml file?I saw this tutorial, which offers quite a bit of good information (some of which I also found in the livedocs) via the comments.[code]...
In my child swf I am using the sound from library with "attachSound". I also use the play/pause button controls of this sound alongwith the other animation.
Now when I load this into my main swf file with "loadMovie", It plays fine but no sound. I found that this is due to no sound linkage in my main file library.
Is there a way to embed fonts by using actionscript? I have many different text areas on a flash page that use exotic fonts. Instead of changing each one of those into "dynamic text " and then embedding it, can I just use code?
In my child swf I am using the sound from library with "attachSound". I also use the play/pause button controls of this sound alongwith the other animation.Now when I load this into my main swf file with "loadMovie", It plays fine but no sound. I found that this is due to no sound linkage in my main file library.Now the issue is that I want to share my child swf's library with main file's library.
I've been trying to learn me some XML and i found a simple tutorial which works, but can't figure out how to format it using simple tags (bold, italics, etc). i've tried many other tutes but can't get it to work with mine. i understand i need to embed fonts and use cdata but it's not working, as i'm not sure where to add it.
Can somebody check the attached .txt file with the simple XML and AS and show me where to add the code to each? I left out my failed attempts so not to confuse. I'm not very skilled in XML
How do you import fonts, so that you are absolutely sure, that everyone will be able to display that font? (otherwise, makybe his computer doesn't have the font).
Since the [Embed(source="1.ttf", fontName="bla", fontWeight="Bold", imeType="application/x-font-truetype")] is not embeding fonts i want couse of errros like with helvetica i try otherway. Since Flash IDE always work nice with embed fonts. I made a SWF that embed the font i want. After I make a class that have a method that returns the fontname. In my flex app i load that SWF.. set a var to the fontname of the included SWF.
Now what i create a new textfield with textformat set to that fontname all work ok. But the quality of the font is so pixel. I tried the AntiAliasType etc.. no real effect. When i look in the SWF with the embed font.. it looks nice and smooth..
Just wondering how to embed fonts using code, and not the library - the examples I have used are giving me errors, so I'm obviously not understanding something.I originally set up a library font, and got it to work fine using the following code, but ideally I'd like to embed using just code.I set up and populate a dynamic text field (JX)g1.textParamFunc(JX);[code]So how would I use the following code to replace the library font?Is there a way to take part of the code, and place it in the g1 package above? Or do I have to create a separate external as for it, and somehow call it into the g1 as?[code]
I have a shared fonts.swf file containing a variety of fonts that my main swf uses. I have a movieclip within the fonts.swf file which is exported for runtime sharing. In my main swf I have the fonts.swf imported for runtime via a movieclip. This all works fine and allows me to use the fonts within the fonts.swf file in my main swf. I am trying to work out how to import fonts.swf for runtime via as2 (instead of manually within the library), as in different circumstances different fonts are required and it is massively increasing the filesize having to import all fonts every time when only a few are needed.
I was going to use a TextField with a UIScrollBar but godaddy disables UIScrollBar so I'm using a TextArea for my output. So far I'm able to disable text input, load htmlText and use the TextFormat class but I can't figure how to embed a font in it. Here's what I'm using now:
var myFormat:TextFormat = new TextFormat(); myFormat.font = "Bitstream Vera Sans";myFormat.size = 14;myFormat.leading = 2.5; externalLoad.load(externalReq);externalLoad.addEventListener(Event.COMPLETE,
but it does not work. if i comment out the embedFonts the css works fine but the text is very aliased. but as3 does not support the embed font property within css.
I went to research these Text Fields on Google and came across some very interesting articles about them.Now I've always known that you have to Embed Fonts, but those articles thought me that there are several ways to embed these characters.What I am very curious about is, what the best way is to properly, cleanly and safely embed fonts with the desired styles.
I have a dynamic Textbox in my SWF. It is attached to a movieclip and can be moved around and such. All somewhat simple. That's not the issue yet
What I need to accomplish is for it to accept different non-standard Fonts (from a list of about 50 Fonts that need to be available). I don't care if it's done by using the "htmlText"-property of the textfield or the "font" property of the TextFormat object... or any other way- I just need it to work.
What I mean it- I need to find a way to get the characters of a bunch of non-standard Fonts (such as "Army.ttf" and "College.ttf") to be available in my SWF so that the textfield can draw from that resource.
I know how to use textfields and TextFormat (at least well enough, I think) and AS 2.0 in general (though I am certainly not a pro)... I know how to Embed a Font to a Textfield (not that that is an accomplishment. heh) I just can't seem to tie the loose ends.
I thought it might be enough to have some textfields in the SWF, "off stage" (one for every font I wanted to embed) and have *them* embed the font I want in order for it to be in the SWF file for the *dynamic* Textfield to use... but I guess it's not at all that simple.