Embedded Fonts shift on load/during animation

I am running into a display issue with fonts on a s:ButtonBar in my application and I can't seem to find this documented elsewhere. My fonts shift on my buttons when either an animation is occurring or when the Module (in a mx:ModuleLoader) is loading. I can consistently reproduce this by clicking a button on the ButtonBar, and moving my mouse over other buttons while the animation on the page is happening. This causes the fonts that were hovered over to "jump" around. They seem to position top left. The fonts DO end up positioning correctly in the end. Any ideas would be greatly appreciated. (screenshots attached)
Some things to note:
- I am loading CSS stylesheets on the fly, but they are not loading on this page. At this point they should arleady be loading.
- The are embedded OTF fonts.
Normal:
During animation / loading:

It looks like removing all font embeds (use the default font) still causes this to happen.
Normal:
While loading / animating:

Similar Messages

  • Embeded Fonts and Externally Loaded Text?

    Just curious, I am designing a site with two embeded fonts. I am also using many externally loaded textboxes styled by a CSS. When I use the inline HTML in the .txt file, can I specify the embeded fonts for the text boxes or will they just use default browser fonts?
    Thanks in advance,
    Jeff

    I think what I need to do is place an instance of a text box on each page, so when you navigate away from the page the existing text box will leave. This works, but I can't get the CSS to do the formatting. Here is the code I have, any suggestions?
    var fileTxt:String;
    var myTextLoader:URLLoader = new URLLoader();
    var cssLoader:URLLoader = new URLLoader();
    myTextLoader.addEventListener(Event.COMPLETE, onLoaded);
    myTextLoader.load(new URLRequest("text/tgc.txt"));
    function onLoaded(e:Event):void{
        fileTxt=myTextLoader.data;
        callCss();
    function callCss():void{
        var cssRequest:URLRequest=new URLRequest("styles.css");
        cssLoader.addEventListener(Event.COMPLETE, onCss);
        cssLoader.load(cssRequest);
    function onCss(e:Event):void{
        var css:StyleSheet = new StyleSheet();
        css.parseCSS(cssLoader.data);
        tgc_txt.styleSheet=css;
        tgc_txt.wordWrap=true;
        tgc_txt.htmlText=fileTxt;
    Like I said, it loads the text fine and eliminates the embeded HTML tags in the .txt file. It does not change color, size or weight as I have in the CSS.

  • Embedded fonts in modules

    Hi all! I was wondering if the fonts that are embedded in the
    main application, can also be used as embedded fonts in the loaded
    module?
    So far if I list al the embedded fonts in the main
    application using Font.enumerateFonts(false), I can see my fonts
    are available, but if I do the same in the loaded module, the fonts
    are not available anymore. Is there a way to register those fonts
    from the main application, to make them avaliable for the modules,
    too?
    Thanks in advance!

    Post Author: sooyeng
    CA Forum: Exporting
    Hi , we have a similar situation.We are extracting reports to PDF, which subsequently has to be converted to xHTML.The embedded fonts complicates the rendering and as a result, the output size increased exponentially. 

  • Unable to load embedded fonts in Textlayout Framework using SWFContext.

    Hi,
        We are having issues with embedding/renderring fonts in swf.
        Here is the code of the slide1.swf compiled by mxmlc.exe [Adobe Flex Compiler (mxmlc) Version 4.1.0 build 16076] with compiler parameters --  "-static-link-runtime-shared-libraries".
    and checked with  Flash player version 10.1 and 10.2 and 10.3.
        package
            import flash.display.Sprite;
            import flashx.textLayout.compose.ISWFContext;
            public class Slide1 extends Sprite implements ISWFContext
                [Embed(source="C:/WINDOWS/FONTS/CALIBRI.TTF", fontName="Calibri", embedAsCFF = "true", unicodeRange="U+0041,U+0072,U+0069,U+0061,U+006C,U+0020,U+004E,U+006F,U+006D", mimeType="application/x-font")]
                public static const calibri:Class;
                [Embed("slide1/sldBg1.png", mimeType="image/png")]
                public static const bg:Class;
                [Embed("slide1/slide1.xml", mimeType="application/octet-stream")]
                public static const slide:Class;
                public function callInContext(fn:Function, thisArg:Object, argsArray:Array, returns:Boolean=true):*
                    if (returns)
                    return fn.apply(thisArg, argsArray);
                    fn.apply(thisArg, argsArray);
        Using Flex 4.1 SDK:--
            When I load the slide1.swf in ActionScript Project it shows the embedded text.
            But, when I load the slide1.swf in  MX+Spark Flex Project, it gives an error :
            Warning: An ActionScript 1.0/2.0 SWF file has loaded an ActionScript 3.0 SWF; code in the ActionScript 3.0 SWF will not run.
           Error TypeError: Error #1034: Type Coercion failed: cannot convert Slide1@f56fce9 to mx.core.IFlexModuleFactory. !
            Below red colored text is the code where the exception occurs.
            var fontClass:Class = ApplicationDomain.currentDomain.getDefinition("slide1") as Class;
          textFlow.flowComposer.swfContext = new fontClass();
            textFlow.flowComposer.addController(new ContainerController(textContainer, containerWidth, containerHeight));   
            textFlow.flowComposer.updateAllControllers();           
            And, when I load the slide1.swf in Only MX Flex Poject, it shows the embedded Font.
        Using Flex 4.5 SDK:--
            With MX+ Spark and MX only Flex Project we get following errors
            VerifyError: Error #1053: Illegal override of createGeometry in flashx.textLayout.elements.FlowGroupElement.
            VerifyError: Error #1053: Illegal override of canReleaseContentElement in flashx.textLayout.elements.SubParagraphGroupElement.
            VerifyError: Error #1103: Class flashx.textLayout.elements::LinkElement cannot extend final base class.
            VerifyError: Error #1053: Illegal override of display in flashx.textLayout.elements.ContainerFormattedElement.
            VerifyError: Error #1053: Illegal override of canReleaseContentElement in flashx.textLayout.elements.FlowLeafElement.
            VerifyError: Error #1053: Illegal override of addParaTerminator in flashx.textLayout.elements.SpanElement.
            VerifyError: Error #1053: Illegal override of canReleaseContentElement in flashx.textLayout.elements.InlineGraphicElement.
            VerifyError: Error #1053: Illegal override of minPercentValue in flashx.textLayout.property.NumberOrPercentProperty.
            VerifyError: Error #1053: Illegal override of hash in flashx.textLayout.property.EnumStringProperty.
            VerifyError: Error #1053: Illegal override of hash in flashx.textLayout.property.BooleanProperty.
            VerifyError: Error #1053: Illegal override of minValue in flashx.textLayout.property.NumberProperty.
            VerifyError: Error #1014: Class flashx.textLayout.property::NumberProperty could not be found.
            VerifyError: Error #1053: Illegal override of minValue in flashx.textLayout.property.IntProperty.
            VerifyError: Error #1014: Class flashx.textLayout.property::IntProperty could not be found.
            VerifyError: Error #1053: Illegal override of hash in flashx.textLayout.property.UintProperty.
            VerifyError: Error #1014: Class flashx.textLayout.property::UintProperty could not be found.
            VerifyError: Error #1053: Illegal override of hash in flashx.textLayout.property.StringProperty.
            VerifyError: Error #1014: Class flashx.textLayout.property::NumberOrPercentProperty could not be found.
            VerifyError: Error #1053: Illegal override of hash in flashx.textLayout.property.ArrayProperty.
            VerifyError: Error #1103: Class flashx.textLayout.elements::TCYElement cannot extend final base class.
            VerifyError: Error #1053: Illegal override of createTextLine in flashx.textLayout.compose.ComposeState.

    Hi Jin-Huang
              But when I use Simple ASProject with SDK 4.1 then it works fine but when I create Flex project then it give error
    with SWFContext.
    I think it's a issue of swfcontext or AS comunication with Spark components.
    Please let me know if any solution.
    Thanks

  • How to use dynamic loaded embeded font?

    I have loaded fonts.swf on startup. I don't use TextLayout
    Embeded fonts feature. Then i have loaded some xml and assign xml
    to TextLayout. How I can use loaded font for display?

    Are you using Flash CS4 or Flex?
    Check out the following blog post, it contains instructions
    for font embedding that may help you out:
    Embedded
    Font Subsetting Using DefineFont4

  • Trouble in loading external swf file and embedded font dynamically

    I have developed a flex application doing something like this: it loads A.swf from somewhere and show it on the stage
    sometimes A uses fonts not installed on users' machine, so at this time my app will load B.swf with needed fonts embedded in it from another place
    I have working it out that fonts in B.swf can be detected and shown in my app stage, but when I use SWFLoader to show A.swf, it still fails in showing the fonts properly...
    Some of my codes pasted here:
    // load fonts
    private function onFontBytesLoadComplete(e:Event):void {
    var data:ByteArray = e.target.data as ByteArray;
    swfLoader.addEventListener(Event.COMPLETE, onSWFLoadComplete);
    swfLoader.source = data;
    private function onSWFLoadComplete(e:Event):void {
    loadSM = SystemManager(swfLoader.content);
    loadSM.addEventListener(FlexEvent.APPLICATION_COMPLETE, onFontLoadComplete);
    private function onFontLoadComplete(e:FlexEvent):void {
    var clazz:Class = loadSM.loaderInfo.applicationDomain.getDefinition(fontName) as Class;
    var fun:Function = clazz.getFont as Function;
    var fontClazz:Class = fun();
    var font:Font = new fontClazz() as Font;
    trace(getQualifiedClassName(new fontClazz()));
    Font.registerFont(fontClazz);
    if(loadFinishedHandler != null) {
    loadFinishedHandler(fontName);
    Anyone has idea about this? 3x~

    Hm, yes, I remember there being some challenges in this regards, with Modules loading fonts at runtime.
    If you take a look at the section "Using run-time style sheets with modules," they describe the basic approach where everything has to be loaded and registered in the primary application domain.
    I think it should work fine the way you have it, provided you are registering both the font and the loaded SWF in the primary application domain. If not, you may need to push the font registration down into the application domain being used by the loaded SWF.
    Something like this perhaps:
    childApplicatonDomain.getDefinition('flash.text.Font').registerFont(fontClass);
    Where childApplicatonDomain is the application domain of the loaded SWF.

  • Using embeded fonts in loaded swf.

    I have a .Swf, which has 3 fonts embedded in it, they are all exported in frame 1 for AS.  This swf loads any number of external .swfs which have dynamically generated textfields inside of them.  This text must be embedded text because effects may be applied to them.  I do not want to embed the three fonts into every external swf, and do not think I should have to.  The font exists in the Loading swf and I have registered the fonts to the global font list.  If I print this list from the loaded swf, all three fonts are present, but when I try to use any of them, my textfiels are empty.
    My question is how do I utilize a font which is embedded in a swf, from a swf which has been loaded into that swf?
    From my external swf, this code:
    [PHP]var embeddedFonts:Array = Font.enumerateFonts(false);
    embeddedFonts.sortOn("fontName", Array.CASEINSENSITIVE);
    trace(embeddedFonts);[/PHP]
    produces the following:
    [PHP][object CenturyBook],[object MyriadProRegular],[object MyriadProItalic][/PHP]
    which are the three fonts that are embedded in the loading swf, So I assume the LOADED swf has access to these fonts.
    When I apply this code to the externally loaded swf:
    [PHP]var FontClass:Class = getDefinitionByName("MyriadProRegular") as Class;
    trace("FontClassInstance -> " + FontClass.toString());
    var linkedFont: Font = new FontClass();
    trace("Font name: " + linkedFont.fontName);
    var textFormat: TextFormat = new TextFormat(linkedFont.fontName, 14);
    //... The next lines set up the text box and apply the format.  I am sure this is done correctly.
    [/PHP]
    I get the following output:
    [PHP]FontClassInstance -> [class MyriadProRegular]
    Font name: Myriad Pro[/PHP]
    which is exactly what I would expect.  Yet, my text box is still blank.  I have embedText = true on the text box, and have applied a string to the "text" property, so it's nothing silly liek that.
    Any help would be appreciated...

    You may also want to look at the various embedded font format issues. Many of the Flex 4 components use a newer embedded font fortmat, which is not the same as the one generally used in Flash. So even if ther Flash font gets registered properly, it still may not work with some of the spark components.
    You should be able to create a swf using Flex that contains fonts embedded in either format, which can then be used in the way you describe, though, since Flex 4 suports both font formats.
    Hopefully, someone else will jump in here if I got some of this wrong.
    -JM

  • Flash animation in Captivate - Embedded fonts not displaying.

    I'm in Captivate 5 creating a lesson, I have made a simple animation in Flash 5 that contains one word in the animation. I output it from Flash to a .swf. Before I output it I set the font (Arial) to embed. It previews fine, when I view the small library review animation in C5 it appears fine. When I F10 to preview the slides, the font has reverted to a default system font. Any idea why the embedded font would not display properly when I do a 5 slide preview in Captivate?
    Best, Steve

    Check out this thread:
    http://discussions.apple.com/click.jspa?searchID=4541194&messageID=5729015

  • Embeded fonts to load when i wont not in the beginning

    How do i make that the embeded fonts load whenever i want?
    they just take
    ages to load in a slow connection and until they are not
    loaded the movie
    doesnt start, and how do i make a loading in this case???
    anyone can help?

    When using this method, consider the Flash Player security
    model:
    For Flash Player 8:
    Data loading is not allowed if the calling SWF file is in the
    local-with-file-system sandbox and the target resource is from a
    network sandbox.
    Data loading is also not allowed if the calling SWF file is
    from a network sandbox and the target resource is local.
    For more information, see the following:
    Chapter 17, "Understanding Security," in Learning
    ActionScript 2.0 in Flash
    The Flash Player 8 Security white paper at
    http://www.macromedia.com/go/fp8_security
    The Flash Player 8 Security-Related API white paper at
    http://www.macromedia.com/go/fp8_security_apis
    For Flash Player 7 and later:
    Websites can permit cross-domain access to a resource via a
    cross-domain policy file.
    In SWF files of any version running in Flash Player 7 and
    later, url must be in exactly the same domain. For example, a SWF
    file at www.someDomain.com can load data only from sources that are
    also at www.someDomain.com

  • Unable to load embedded fonts in TlF / FlowLeafElement

    dears,
    I use TextFlowUtil.importFromString and FlowLeafElement to make each some text have its own style, every some words have diffirent color, fontFamily, fontSize....etc
    that is done here in the text attribute in this xml tag, and TextFlowUtil.importFromString and FlowLeafElement make taht perfect:
    <TextArea text="&lt;div direction=&quot;rtl&quot;&gt;&#xD;&#xA;  &lt;p textAlign=&quot;right&quot;&gt;&#xD;&#xA;    &lt;span fontFamily=&quot;ttf&quot; fontSize=&quot;16&quot; color=&quot;#FFE000E0&quot; &gt;Welcome to Android Training. Here you'll find a collection of classes that aim to help you build great apps for &lt;/span&gt;&#xD;&#xA;    &lt;span fontFamily=&quot;Arial&quot; fontSize=&quot;16&quot; color=&quot;#FFE000E0&quot; &gt;Android, using best practices in a variety of framework topics.&lt;/span&gt;&#xD;&#xA;  &lt;/p&gt;&#xD;&#xA;  &lt;p&gt;&lt;/p&gt;&#xD;&#xA;  &lt;p textAlign=&quot;right&quot;&gt;&#xD;&#xA;    &lt;span fontFamily=&quot;Arial&quot; fontSize=&quot;16&quot; color=&quot;#FFE00000&quot;&gt;Each class explains the steps required to solve a problem or implement a feature using code snippets and &lt;/span&gt;&#xD;&#xA;    &lt;span fontFamily=&quot;Arial&quot; fontSize=&quot;16&quot; color=&quot;#FFE00000&quot;&gt;sample code for you to use in your apps.&lt;/span&gt;&#xD;&#xA;  &lt;/p&gt;&#xD;&#xA;  &lt;p&gt;&lt;/p&gt;&#xD;&#xA;  &lt;p textAlign=&quot;right&quot;&gt;&#xD;&#xA;    &lt;span fontFamily=&quot;Arial&quot; fontSize=&quot;16&quot; color=&quot;#FF00E000&quot;&gt;What you see now is just the beginning. We plan to add many more classes, expand and refine existing &lt;/span&gt;&#xD;&#xA;    &lt;span fontFamily=&quot;Arial&quot; fontSize=&quot;16&quot; color=&quot;#FF00E000&quot;&gt;classes, and build Training Courses that help you enhance your apps using objective-oriented collections of &lt;/span&gt;&#xD;&#xA;    &lt;span fontFamily=&quot;Arial&quot; fontSize=&quot;16&quot; color=&quot;#FF00E000&quot;&gt;classes.&lt;/span&gt;&#xD;&#xA;  &lt;/p&gt;&#xD;&#xA;&lt;/div&gt;" direction="rtl" styleName=".textAreaTitle" editable="false" selectable="true" scrollable="false" mainReferance="UI.Components.Basics.TextArea" />
    The problem is that i need to embed fonts, by this fontFamily=&quot;Arial&quot; you can set font name which you want, but if i set font name which is embedded it won't work, like : fontFamily=&quot;ttf&quot;
    the embedded code is :
    [Embed(source='/Resources/majallab.ttf',fontName='ttf',mimeType='application/x-font',embed AsCFF='true')]
                                            var font1:Class; //This is only used to compile the code
    I use Flex SDK 4.5,
    what can i do ?
    Thank you in advance,
    amt

    To use embedded fonts in a Flex component, the fontFamily for the component needs to be set to an embedded font that is in the same SWF as the other embedded fonts in the TextFlow.  See my blog for more details
    Alex Harui
    Flex SDK Team
    Adobe Systems, Inc.
    http://blogs.adobe.com/aharui

  • Embedded font errors after migrating pdfs to new web server

    Hi All,
    After hundreds of working pdfs were moved to new web server, they produce variations of the "cannot extract the embedded font" (name of font) "some characters may not display or print correctly" error. The first page loads perfectly and the rest never load. All these files open fine when I open local copies in Reader (9.1.3) and Professional (7.1.0).They also open fine when moved to another server. When I delete copies on the server and re-upload using the working copies, the errors persist. Doesn't make sense. I also occasionally get the error "there were problems reading this document (14)".
    I was told by the IT department that a possible cause was that the new server environment used fonts installed on the server rather than the local machine to display pdfs.  This doesn't make sense to me.  I've researched these errors and haven't found anything applicable or that has worked. Any suggestions? Has anyone else expeienced this?
    The server is IIS and is running ASP.net. The IT dudes are saying they need to install all the refferenced fonts on the web server but due to the expense of this, they can't.This will nessecitate a really bizzarre and Rube Goldbergesque workaround (that I'm not even going to try to explain here) that I'd really like to avoid.  Any suggestions? Are there any Acrobat settings that need to be twekaed?

    Hi,
    I read the following on another discussion in this forum:
    it appears that with the shortkey ctrl+shift+Y you can force the pc to work around the system fonts
    Maybe that helps.
    Jenny

  • Cannot extract the embedded font arial.Some char might not be displayed

    Hi Folks,
                  Our requirement is to generate the customer account statement for a set of cusomters during a particular period.
                         we  use a script to generate the statement and convert it to pdf.This pdf is then stored in the application server and retrived using cg3y transaction.The transaction allows the statement to be generated for multiple customers and company code.
    the problem that we face is that the first customer account statement is generated properly the rest of the statements are not displayed properly.When we open the customer account statement we get the error 'Cannot extract the embedded font arial.Some characters might not be displayed properly'.All the Headings that we of the font BOLD ARIAL were not displayed.
    This error does not occur for the first pdf file generated.(say we have 3 customers  for the 1st customer pdf is proper however for the next two error'.
                         When I checked the application server I found that the first file has font subtype as Type1 and then rest of the files have font subtype as Truetype.
    This is working fine.I downloaded the file to pc using cg3y.the pdf looks fine.                   
    Directory:  /home/nwfound/n_us_cas
    Name:       0010798791US13122009.PDF
    %PDF-1.3#
    2 0 obj#
    /WinAnsiEncoding#
    endobj#
    3 0 obj#
    <<#
    %Devtype SAPWIN   Font COURIER  normal Lang EN#
    /Type /Font#
    /Subtype /Type1#                       ****see here font subtype is type1
    /BaseFont /Courier#
    /Name /F001#
    /Encoding 2 0 R#
    >>#
    endobj#
    4 0 obj#
    <<#
    /Filter 5 0 R#
    /Length 6 0 R#
    /Length1 352224#
    >>#
    stream#
    This one is not working fine.Gives an error 'Cannot extract the embedded font arial.Some characters might not be displayed properly when downloaded to pc using cg3y.The heading that were of font ARIAL BOLD were not displayed.
    Directory:  /home/nwfound/n_us_cas
    Name:       0010000105US13062010.PDF
    %PDF-1.3#
    2 0 obj#
    /WinAnsiEncoding#
    endobj#
    3 0 obj#
    <<#
    %Devtype SAPWIN   Font COURIER  normal Lang EN#
    /Type /Font#
    /Subtype /TrueType#                - see here the subtype is True type.How can i change this?
    /BaseFont /Courier#
    /Name /F001#
    /Encoding 2 0 R#
    >>#
    endobj#
    4 0 obj#
    <<#
    /Filter 5 0 R#
    /Length 6 0 R#
    /Length1 352224#
    >>#
    I have to change the tont subtype to Type1 as in my first cust. statement.Is there a way to this???????
    There can be no problem with the code cause the account statement generated for first customer is perfect.
    Any suggestions will be appreciated.
    IF hotfdata[] IS NOT INITIAL.
    *Convert otf data to pdf lines.
        CALL FUNCTION 'CONVERT_OTF'
          EXPORTING
            format                = 'PDF'
          IMPORTING
            bin_filesize          = l_size
          TABLES
            otf                   = hotfdata
            lines                 = li_pdf_output
          EXCEPTIONS
            err_max_linewidth     = 1
            err_format            = 2
            err_conv_not_possible = 3
            err_bad_otf           = 4
            OTHERS                = 5.
        IF sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
        ENDIF.
    *clear hotfdata otherwise next empty cust acc. statement may have
    *this data.
        REFRESH:hotfdata.
        CLEAR   hotfdata.
    *If account statement is generated then set w_flag to generate email.
        w_flag = 'X'.
    *The converted pdf lines are of char132 format.
    *They have to be converted to char255 format.
        LOOP AT li_pdf_output INTO lwa_pdf_output.
          TRANSLATE lwa_pdf_output USING ' ~'.
          CONCATENATE l_gd_buffer lwa_pdf_output INTO l_gd_buffer.
          CLEAR lwa_pdf_output.
        ENDLOOP.
        TRANSLATE l_gd_buffer USING '~ '.
        REFRESH li_mess_att.
        DO.
          li_mess_att = l_gd_buffer.
          APPEND li_mess_att.
          SHIFT l_gd_buffer LEFT BY 255 PLACES.
          IF l_gd_buffer IS INITIAL.
            EXIT.
          ENDIF.
        ENDDO.
        CLEAR   x_objcont.
        REFRESH x_objcont.
        LOOP AT li_mess_att.
          x_objcont = li_mess_att.
          APPEND x_objcont.
        ENDLOOP.
    *application file name
        CONCATENATE po_filun kna1-kunnr save_bukrs datum02+4(2)
                      datum02(4) lc_pdf INTO l_filename.
        CONDENSE l_filename NO-GAPS.
        CONCATENATE file l_filename INTO file.
        CONDENSE file NO-GAPS.
    *Transer pdf data to app. server.
        "data len type i.
        OPEN DATASET file FOR OUTPUT IN BINARY MODE.
        LOOP AT x_objcont.
          TRANSFER x_objcont TO file.
        ENDLOOP.
        CLOSE DATASET file.
      ELSE.
        REFRESH:hotfdata.
        CLEAR   hotfdata.
      ENDIF.

    Hi,
    this can be related to the compression of the PDF file.
    You can turn off the FlateDecode compression again via report RSTXPDF3 as described in Note #843480. It is a little confusing. The option 'FLATE_COMPR_OFF' needs to be set to 'On' to turn off the FlateDecode compression.
    To set this please run as follows:
    se38 -> RSTXPDF3 -> enter 'FLATE_COMPR_OFF' in the 'Name' field -> Select 'Change Settings' radio button
    You will get a pop-up 'Do not use flat compression'.
    Select the 'on' button.
    After this check if the PDF is created correctly.
    regards,
    Aidan

  • AIR 3.0 mx:HTML embedded fonts in external swf - silent craziness

    The recent upgrade to AIR 3.0 has hosed our application.  We rely heavily on an mx:HTML control to render the UI of our application using javascript and HTML templates.  Everything has been working great in production for months, until Adobe released AIR 3.0 last week.  We use embedded fonts in our application that our defined in an external .swf (loaded at runtime).  The HTML control loads a .css file that references the name of our embedded font "ArialEmbedded" and it all worked great.  But now, with 3.0 it does not respect anything in the external .swf.  We get the default Times New Roman font in all of our content, and the app crashes with reliability (in debug mode and release mode) without any exceptions being thrown.
    Using the Windows Debugger, I have been able to track it down to this call consistently - Webkit!cairo_pattern_get_type with an Access Violation erros - c0000005 . 
    After some Googling, it seems webkit uses Cairo for the graphics rendering portion of the library, and in this case it is trying to render a specific color.
    1) I've tried forcing the moduleLoader on the HTML control to use the moduleLoader of the parent Spark component - to no avail.
    2) Did something change with style management and loading external .swf files?
    3) Any other help?  At this point, I have no idea where to begin.  When it crashes, usually during the rendering of items in a grid the AIR process will grab about 2GB of RAM all at once and then stop working with the windows process stopped working dialog.
    Thanks for any help,
    Steve

    Hi,
    Could you please open a new bug report on this over at bugbase.adobe.com? Please include sample media, code, project or app to help us reproduce the issue. Finally, once the bug has been added, would you mind posting back with the URL so that others affected can add their votes and comments?
    Thanks,
    Jian
    Adobe Flash Runtime team

  • Embedded font has extra space after special characters

    I've built a web-based Flash movie for a major client. The SWF uses an embedded font and loads text from an XML document. The client is localizing it for several languages, which of course include special characters. In this case, the å character is giving us problems -- it always renders with an extra space after it. For example, the Danish word spørgsmål is rendered as spørgsmå l.
    I might be inclined to think something's wrong with the font, because it doesn't happen with other fonts. However, some Googling turned up several other cases of people with similar problems using different fonts.
    When I remove the font embedding, the problem disappears. I can watch it do this right in the IDE. As soon as I embed characters again, the phantom space returns. And it doesn't happen in any other applications.
    I've spent many hours trying all kinds workarounds, but I've come up with nothing so far. As I said, I've found several other mentions of this problem but the only solution I've seen is "use a different font." In this case I can't -- it's a corporate identity font that's required for this project!
    If it makes any difference, I'm linking the font in the library, then specifying the embedded characters for the text fields. I also have text fields created entirely in Actionscript (AS3) that behave exactly the same way.
    Please tell me there's a solution to this! I'm pretty positive this is a Flash bug at this point, though I'd be happy if someone proved me wrong.

    Hi,
    I read the following on another discussion in this forum:
    it appears that with the shortkey ctrl+shift+Y you can force the pc to work around the system fonts
    Maybe that helps.
    Jenny

  • Embeded Font

    Hi
    I'm creating my own font for my application recently, and I use [Embed] tag to embed fonts in. it works out when I debug my application in Flash Builder, but when I publish it on my site, all embeded font are missing, they just don't display, my code is
    [Embed(source="res/Font.TTF", fontName="Font",unicodeRange="U+30-U+39",mimeType="application/x-font" ,embedAsCFF="false")]
    public const Font:Class;
    =================================
    text.defaultTextFormat=new TextFormat(new Font());
    And when I check "hasGlyphs()", they all return true in both FB debugger and web page, but just...
    Somebody help me please, thank you a million

    Hi kenneth.
    Thank you for metioning "bypass" my preloader, I've solved the problem. I don't know if it is a common sence, but it is because fonts registered cannot be applied cross application domain.
    This is why and how:
    /** in preloader swf file(which is added to stage) **/
    // load main application
    var loader:Loader = new Loader();
    var request:URLRequest = new URLRequest(MAIN_APP_SWF_URL);
    var context:LoaderContext = new LoaderContext();
    context.applicationDomain= new ApplicationDomain();      // main application is in a new application domain
    context.securityDomain = SecurityDomain.currentDomain;
    loader.load(request, context);
    /** in main application **/
    // go ahead and load font swfs
    Font.registerFont(myFont);     // fonts are registered in main application's application domain, thus apart from domain which preload is in.
    Then, font I registered in main application is JUST inside of the domain which main application swf is in(say domain B), and they're not in the domain which document class(in my case, the preloader) is in(say domain A), if you have a little test, try out put:
    Font.enumerateFonts(false).length;
    In domain A, sorry no matter how many fonts are registered, it's 0, in domain B, everything is ok, and a call to hasGlyphs() method will just fine(which treated me). So when I create a TextField and apply a embed font, then I add it to display list, I think AVM is looking up the font object inside the application domain that document class is in, that is domain A, so nothing is got to display!
    If I replace line:
    context.applicationDomain= new ApplicationDomain();
    with:
    context.applicationDomain= ApplicationDomain.currentDomain;
    Then it is just like in debugging in FB, domain A is the same as B, everything is fine.
    I'm not a pro in working with Flash and AS,  I haven't been in the same case before, and I didn't see any suggestions in offical document about this(maybe I didn't watch close enough), So I don't know if it is common sense while developing actionscrip applications,  but I think it's better to make a conclusion:
       Fonts should be registered using Font.registerFont() method inside of the application domains which document class can visit.
    I shall confess that I've been careless when looking for the answer, and thank you so much Kenneth and Josh, you saved me.
    One more thing, like the font resource i'm using, images and animations are in the same application domain, why this just happen to Fonts? Images in a new application domain can be displayed freely, why cannot fonts?
    Andrew.

Maybe you are looking for