Actionscript 3 :: Flash Cs5 - Embedded Both Fonts - Top Font Overwrites The Second?
Jun 29, 2011
I have two dynamic text boxes on stage - strap1 and strap2 respectively.Both text boxes use the same font; just different styles. e.g strap1 is Arial regular, strap2 is arial black.In order to get a good anti-alias, I have embeded both fonts. The problem is that the top font overwrites the second. So instead of strap1 being arial normal and strap2 arial black, both textboxes are arial normal.
I have generated an swf file that contains my embedded font of specified Unicode range, then I am loading this swf into my application. The code in the generated file for the font, automatically registers the font using the Font.registerFont method. I then load this swf file into my application, I never add it to the display list, I just created an instance of the file so that the code is executed to register the font.
Then I use the font name when I create embedded text fields and there you go it works... well it used to, I am not having any luck at the moment though. Sometimes it displays fine, other times it all appears cut off and I see a few pixels of the text I am trying to display.... Anyone else had a similar issue? Know what it might be? I have created a class below that I am using for the embedded font text, any issues people see with this?
I'm making some ads that are pulling in an mxl feed that had html embedded. I'm working with flash CS5. I'm pulling the text into a dynamic text field embedded into a mc. So at first I was pulling in my feed and anything with a bold tag or a heading tag wasn't rendering the text correctly when I had arial embedded so I had to unembed all fonts. Wasn't the prettiest but was working. So now that ads are published and on certain people's computers the text loading into the text boxes are either cut off or there is extra room. So I'm wondering can dynamic text being loaded into flash be effected by the system fonts in a browser or a zoom in feature of a browser? I cant see how the but that seems to be the problem.
I save my (embedded) fonts in an external file (fonts.swf) that gets loaded at runtime. Pretty standard. I also use a bunch of UI artwork generated in the Flash IDE. Some of this artwork contains static textfields (thus, not proper TextFields that can change. Just frozen glyphs). Here's the problem: if I use the same font in any static textfield and then embed that same font into my collection of runtime fonts, the runtime font will refuse to render. It's the same effect you get if you set a textfield with embeddedFonts=true to use a font that isn't embedded. If I change the static textfields to use a different font, the runtime fonts work just fine.
Edited Short Version:The Adobe Flash docs list a property embedFonts on TextAreas:
A Boolean value that indicates whether the font specified in fontFamily is an embedded font. This style must be set to true if fontFamily refers to an embedded font. Otherwise, the embedded font is not used. If this style is set to true and fontFamily does not refer to an embedded font, no text is displayed. The default value is false. Regarding the "If this style is set to true and fontFamily does not refer to an embedded font, no text is displayed" statement: How can I detect in ActionScript when this scenario happens?
TL;DR Original Version: I have a flash application which loads external .swf files containing embedded fonts, so that these fonts can be used within the main application. We're accomplishing this by using the following ActionScript code on anything which uses custom fonts:
I have an embedded font in my AIR/AS3 app that lacks support for most internationalcharacters. Using TextField and StyleSheet with the font-family property, I assumed I would simply need to do this:font-family: Interstate-Regular, _sans;This works if TextField.embedFonts = false; but then Interstate-Regular isn't embedded for users that don't have it on their system. With TextField.embedFonts = true; the text doesn't even show up. Is there a way to embed Interstate-Regular and still use _sans as a fallback system font without embedding it as well?
I'm trying to embed a font in FlashDevelop. My folder structure is My embed metadata is
[Embed(source = 'resources/04B08.TTF', fontName = '04b08')] public var _04b08:Class;
My code is
public var titleFormat:TextFormat; public var titleText:TextField; private function init(e:Event = null):void
[code]....
If I use this, I get
But I uncomment the titleText.embedFonts = true; line, I get This is the method that all of the guides I can find use. What should I do to get it to work?
[URL]It is a Drupal-powered, AMFPHP-connected AS3 web app. The data goes through to Flash with no problems, I have verified that UTF-8 is fine and all. The problem can be better seen in these URLs:
[URL]
A plaintext version of that link:
[URL]
The font is Inconsolata although I could use any monospace open-source font if necessary. You can see that I have embedded the font (I even opted for the dynamic textfields to embed the whole thing, full charset) as well as the "New Font" menu in the library. Inconsolata shows up with an asterisk in the CS4 authoring tool (which according to Adobe documentation means the thing is embedded).
I have tried other font embedding options to no avail. Inconsolata seems to have that "ō" character when used in the authoring but it is not showing up in the dynamic texts.Another problem I am having: if I use static text fields the font doesn't get embedded (WTF). I have to convert the field to dynamic and then it works ("the videogame history timeline" top left is a dynamic text field although I would prefer it not to be... that and others). If I use static text field the font gets converted to some sort of Times New Roman font.
The text is AS3-created (as well as the search results).I am embedding the text via HTML (.htmlText) and styling with CSS.The whole code is open source and can be found here:
[URL]
An example of how I fill in a text field can be found here:
I'm using Flash CS5. I've got an embedded font loaded from an external SWF. As far as I can tell, it's embedded properly - it used to work before I switched from the classic TextField - but I needed to switch because I need the advanced ligature support. My code is:
//setting up... var text:TFLTextField = new TLFTextField(); text.width = 530; text.height = 330;
[Code]....
Edit: Just tried to switch the font to Arial, and it fell back to Times New Roman again. So apparently the problem is not with the embedding, but with the way I assign the font - meaning this may be less complicated than I originally thought. Scratch that, Arial worked after I changed embedFonts to false.
I used the proLoader that comes in Flash5.5 to load a swf which contains a tlf text with an embedded font. The proLoader works great but it doesn't display the font instead it displays a font that looks like Helvetica. I also tried 'merged into code' in RSL settings default linkage and the swf still does not display the font I want. It works fine in Classic Text.
I have a Flash file in which I want to embed a font, but the licence terms for that font mean I can only embed it in a file if that file is security protected to be non-editable. Assuming this means I need to take some sort of precautions to prevent the file being decompiled and the font extracted, is there any way of enforcing this?
Note: I don't care about the code itself being public, I just don't want the font file to be available.
I try to do a site for a community against child abuse, I've got external text files and have choosen render as html. I choose Verdana regular font and embed some swedish characters. When I then write something in the text file it works OK, and so with the <i>, <u> and <li> tags but when I write <b> tags nothing happends at all. Then I tryed to embed the bold font and everything went bold, why is it so? How do I make the bold tag work?
I'm using Flex 4. I'm trying to apply a embedded font in all Alert components of the application, to get the same style that all the app, of course. I code in my CSS file:
[Code]...
The font-family worked to all componentes, but not to the Alert component. In alert the text message and title got unvisible. If I change to other font-family it works correctly, just the embedded font doesn't work on Alert component. Anyone got this problem? Obs: The embedded font worked in all the app, just the Alert no.
I have a big problem with font embedding and I can not debug it myself. I' ve done a simple list of attached movieclips with textfields inside them, with embedded fonts. I have no problem with flash player 9 in order to see the list, but in flash player 10 I can't see it. The font is very common, Arial actually so you can test it very easily. I am using a font symbol in the library, a class and an xml file for my data. Also you can see it online in (if you have flash player 10 you can't see a thing)
We have a large flash site which is translated into 11 languages. We have a font loading system whereby all the characters required to display the site in each language are embedded in external swfs (so 11 swfs).recent update to the site requires us to use the Text Layout Framework (TLF) for one area of text display, which of course only supports fonts embedded in the new CFF format. I've attempted to embed a second instance of the font using the tag embedAsCFF="true", and after loading in the font SWF I can see this font is correctly registered as it shows up in the array returned by Font.enumerateFonts.The TextFlow instance I am using has the following properties set:
I have a function that has an optional variable myFont. By default, it's set to myFont:String="Impact". However, when I try to define a different font name by using the function, or even just changing the default font name, I get
TypeError: Error #1009: Cannot access a property or method of a null object reference.
Arial isn't embedded anywhere in my project, so I don't really understand why the compiler is being so fussy about others... :<
Here is the FontDescription -> ElementFormat part of the code:
fontDescription = new FontDescription(); fontDescription.fontName=myFont; fontDescription.fontWeight=FontWeight.BOLD;
[Code].....
I've tried [Embed]ing the font in the document class, embedding it via the Flash IDE...
I have textbox on stage, but when start my applicacion, show me following message: "Fonts should be embedded for any text that may be edited at runtime, other than text with the "Use Device Fonts" setting. Use the Text > Font Embedding command to embed fonts." i don't do. becouse i need this text box.
I would like to preface this wall of text by saying, I am very new at this. I may be missing something obvious. I'm working in Flash CS5 with Actionscript 3. I'm trying to use actionscript to create a textfield, and populate it with text. I've embedded my font in my project using the "Font Embedding" window. However, when the code to create the textfield is run, if "embedFont = true;", the font is invisible. The cursor still changes when hovering over it, so I know it's there. Or at least its text box is, I guess. Dynamic textfields with embedded text which are already on the stage seem to be unaffected.
I've tried changing the embedded fonts outline format, neither work. I've tried directly embedding the font with the "embed" tag via actionscript, but it doesn't seem to work with CS5, or I don't know what I'm doing. As you can see in the code provided, I've tried "registering" the font, with no success. I've tried using:
I'm having some trouble getting my fonts to show up correctly. I have the fonts embedded properly, being read from an xml file. Attached is a screenshot - don't mind the terrible colors; it's all brought in through xml. The alignment of the text boxes are not complete, but I have the top headers set up properly, yet the right header is squished down.
I'm using some fonts embedded in SWF in a program I'm developing. I need to use some specific font style like '37 Thin Condensed' and '26 Ultra Light Italic' etc... how can I specify these style when using fonts? I want to set style using AS3 code...
I am really at a lose end with this - I have a flash file called in xml into a dynamic textfield. It works fine with English but when I try and put Greek into the xml the flash file then doesn't show the font. The font is verdana - which can be translated and I have embedded the font, with greek and made sure my xml is unicode-8 - but it still shows nothing.
I'm in the middle of the painful transition to AS3, and have encountered a stonewall. In AS2 you could export any font for actionscript and use its identifier (for example "Font 1") in htmlText:
I have embedded a Font in my flex app. That works on any components without problems. @font-face { src:url("../assets/fonts/wedtxtn.ttf"); fontFamily: "CSSFont"; cff: true; }
However, when I try to apply the font to my TextFlow object, it is not working. However, it does work when I use the FTE and do it my self. I debugged through the TLF and the looks like the correct FontDescription is created.
Here is the code I use to create text (Full Source @ Pastbin) var element:SpriteVisualElement = new SpriteVisualElement; element.verticalCenter = 0; element.horizontalCenter = 0; // Create Text using TLF var span:SpanElement = new SpanElement(); [Code] .....
I think the title says it all. I'm building website and I've come half way now just to notice that my clients cant see my font that supposed to be there. What I've learned so far is that in static text fields, flash should embed it itself since I can't reference to it + embedFonts property not working.[code]...
I've got a number of related projects set up in Flash Builder. Each project gets its graphical assets from an exported SWC file (or multiple SWC files.) This works fine, but I wanted to create a shared project that contains stuff used across all projects. The first item in there is a screen with a number of clips containing dynamic text fields on them. This screen (and associated assets) are exported to a SWC and then I have written code in the shared project to add functionality to the screen and buttons. I'm using 2 fonts, both are embedded.
Both show up just fine in my test harness, but when I link the shared SWC and src folder (which is required in order to use this code/assets in the other projects) the textfields blank out if I try to set their text properties. If I leave the default text (set in the FLA) it shows up, and the static text fields in the FLA also show up, it's only when I set the text property.
I've tried a number of combinations, including removing embedding, exporting for ActionScript, setting all textfields in the shared project to dynamic, all with no luck. The main project does have the same font embedded, and I've checked that the same glyphs are selected in both the main and shared projects. I realize this is a rather complicated setup, but I have yet to find a workflow to allow a designer and developer to work on large projects that is better (but I'd love to hear one!)
I am dynamically loading rss description into it and would like to have first character and characters unsupported by other font be in that first font. i limited the range of char of that second font so all unsupported chars and first char should be in that first font.
When you use funky/weird fonts in a fla are they embedded automatically like a PDF file? So if the viewer doesn't have that font they can still see it?