Flex嵌入印地语字体问题

scyqe7ek  于 2023-01-12  发布在  Apache
关注(0)|答案(2)|浏览(239)

对于所附的代码,我得到了以下编译时错误:转码期间出现异常:按系列名称“Kundli Hindi Normal”找不到具有粗体粗细和斜体样式的别名“myFontFamily”的字体
我已经安装了其他印地语字体,我得到同样的错误,为他们以及。
虽然我没有得到任何错误的标准字体,如Arial,Helvetica,甚至“微软喜马拉雅”

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
        <mx:Button x="96" y="102" label="Button"/>
        <mx:Style>
     @font-face {
    src:local("Kundli Hindi Normal");
    fontFamily: myFontFamily;
    advancedAntiAliasing: false;
    font-weight:bold;
    font-style:italic;
}

     Button {
        fontFamily: myFontFamily; 
        fontSize: 18pt;
     }
     HBox {
        fontFamily: Times; 
        fontSize: 18pt;
     }

  </mx:Style>

</mx:Application>
c90pui9n

c90pui9n1#

我刚下载了Kundli印地语字体,我得到的只是一个“正常”字体-没有粗体或斜体。显然,我们可能从不同的地方得到了字体,你可能有额外的字体,但你 * 必须 * 有单独的粗体和斜体字体,以便嵌入一个具有粗体和斜体属性的字体。
还有,我下载的字体名为“Kundli Hindi NormalA”......不知道为什么它被命名为“NormalA”,而不仅仅是“Normal”或“Regular”。如果你还没有的话,你可以仔细检查一下,以确保你的字体确实被命名为“Kundli Hindi Normal”。这似乎不是问题所在,但重新检查一下这类东西不会有什么坏处。至少对我来说是这样的:)。
如果你找不到这种字体的粗体字面--我在谷歌上搜索过,好像找不到--你可以使用ActionScript的高级字体功能来创建粗体和半粗体版本的字体。不过,我没有任何关于伪斜体的有用建议。
以下是使用嵌入字体(Myriad Pro)并通过subpixel样式修改其粗细的示例:

.roomViewTitleRoomType
{
    color: "0x8AA1A8"; 
    font-size: 20;
    fontFamily: "Myriad Pro";
    fontAntiAliasType: "advanced";
    fontThickness: 200;
    fontGridFitType: "subpixel";
}

您可能希望声明一个包含高级字体操作(fontAntiAliasType、fontThickness、fontGridFitType)的字体风格,如下所示,但附加信息将被忽略。

@font-face
{
    src: url("/assets/fonts/kundli.ttf");
    fontFamily: "Kundli Hindi Heavy";
    fontWeight: "normal";
    fontAntiAliasType: "advanced";
    fontThickness: 800;
    fontGridFitType: "subpixel";
}

希望能有所帮助。

n1bvdmb6

n1bvdmb62#

很可能字体文件本身的粗体和斜体版本的名称是“无效的”,我记不清具体细节了。但是我们遇到了一个类似的问题,一个字体的粗体版本有一个自定义的名称,这导致了这个错误。我们必须修改字体,以便让应用程序编译。任何像样的字体管理程序都应该能够给予你字体的细节来帮助你发现错误。

相关问题