我遵循了 sIFR wiki 上的解释,但似乎无法在我的 Flash 电影中显示重音字符。我打开了字符嵌入调色板,将“ÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßàáââääåæçèéêëìííîïïðñòóôõöøùùúûüýþÿ”粘贴到&符号后的“包括这些字符”字段中,点击“确定”,然后重新导出.SWF。
这些字符仍然没有在我的 sIFR 文件中呈现——有什么建议吗?我正在运行 r436。
我遵循了 sIFR wiki 上的解释,但似乎无法在我的 Flash 电影中显示重音字符。我打开了字符嵌入调色板,将“ÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßàáââääåæçèéêëìííîïïðñòóôõöøùùúûüýþÿ”粘贴到&符号后的“包括这些字符”字段中,点击“确定”,然后重新导出.SWF。
这些字符仍然没有在我的 sIFR 文件中呈现——有什么建议吗?我正在运行 r436。
可能是网页/javascript 和 flash 之间的编码没有获取特殊字符 - 您是否调试过您的 javascript 以查看传入的内容?
[编辑] 网页编码设置为什么?[/编辑]
您是否尝试过检查“基本拉丁语”或“拉丁语 I”框(仅用于完整性检查?)我刚刚查看了我的并使用了“拉丁语 I”。
也许您使用的字体不包含这些字符?通常,字体只支持 ascii。
正如杰里米所说,我在 sifr 和 charecters 中看到的主要问题是特殊字符不是您使用的字体的一部分。
一种测试方法是使用另一种标准字体(例如 arial)运行您当前的方法,如果它有效,那么它可能取决于您的字体。
它是什么字体?
其次,在 Flash 中制作字体字形时,您必须更改设置以包含任何外来字符,以确保它们在字体 Flash 电影中。大多数非标准字符都会被删除,因为它会减小 swf 字体文件的文件大小。
Unicode转义序列?
或者也许检查一个 url 编码图表
当您查看生成的源代码(如下)时,您会看到这些字符是由 javascript 编码的...
content=This%2520is%2520an%2520embedding%2520test%253A%253Cbr%253E%25C3%25C4%25C5%25C6%25C7%25C8%25C9%25CA%25CB%25CC%25CD%25CE%25CF
你能在文本字段上打开 HTML 以查看它们是否出现吗?
检查拉丁文有人提到过,拉丁文扩展 A、扩展 B 和 Add'l 呢?Cmd+单击标点符号、基本拉丁语以及所有其他拉丁语选项可能会为您找到丢失的字符。
我怀疑它是Flash的问题。如果我转到您的示例页面(http://unstoppablerobotninja.com/demos/sifr-encode/),右键单击 Flash 电影,然后复制到剪贴板,这是输出:
这是一个嵌入测试:
ÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßàáââãäåæçèéêëìíîïïðñòóôõöøùùúûüýþÿ
是否有效?
对我来说,这表明角色在 Flash 电影中的结局很好,但它们没有被渲染。
如果您对其他 Flash 电影使用静态发布,Flash 可以渲染这些字符吗?
尽管该字段设置正确并且需要将特定字符嵌入该字段中,但动态文本字段不呈现特殊字符我也有同样的问题。
我注意到 HTML 源文本被格式化为粗体(即使用标签)会产生这个问题 - 没有粗体的相同文本会导致正确呈现特殊字符(尽管显然不是粗体:) 我尝试了各种方法,包括使用 unicode 引用和导出字体的粗体变体(Verdana)但没有任何帮助,所以我认为这是一个 Flash 错误。
当然,如果您像我一样需要使用粗体字体,知道这并不能解决问题 - 我仍在寻找解决方案,如果我找到了会回复。
祝你好运 ;)
解决 Bold 问题很容易。不出现特殊字符完全是另一个问题,也是我们目前遇到的问题。
这是粗体(和斜体)的处理:
如果您在 HTML 中使用粗体或斜体标记,则 Flash 不一定嵌入字体的粗体和斜体版本。您需要做的是创建一些隐藏的动态文本字段,其中嵌入了粗体和斜体版本的字体。这些隐藏的文本字段可以放置在超过时间线末尾的帧中,这样它们就不会在运行时出现。
一个相关的问题是当您单击属性面板中的 B(表示粗体)并将 HTML 文本插入没有 <b> 标记的文本字段时。Flash 会将粗体字体嵌入到 SWF 中,但如果您不在文本中插入 <b> 标记,Flash 将使用非粗体字体呈现它(不会出现,因为它没有嵌入)。
不幸的是,我们遇到了一种情况,即使用一种字体创建了一个动态文本字段,如果我们将其更改为任何其他字体,它就不会呈现。特殊字符(例如 ® 符号)不会呈现,即使它们嵌入在字体中。这适用于 Flash CS3 和 AS2。