问题标签 [font-embedding]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
css - 在 Adobe Flex 中,为什么字体的嵌入版本与系统中安装的相同字体的行为不同
设想:
Flex 应用程序利用 @font-face 声明嵌入字体。(需要嵌入字体才能旋转文本。)
该应用程序最初是作为英文应用程序开发的,但在本地化过程中,需要找到能够显示亚洲字符的 unicode 字体。该应用程序的原始实现使用四种字体来满足字符强调的各种排列。Bold、Bold Italic、Italic 和 Normal 都是通过 Arial 系列中相应的 Arial 字体提供的。
问题:
当尝试将字体编译为可用于粗体、斜体和粗斜体的字体时(是的,它并不理想,这只是一个测试,看看是否可以完成):
问题是,在编译应用程序时,Flex 变得暴躁并给出以下错误消息:
[ERROR] /dirpath/Style.css:[49,-1] exception during transcoding: Font for alias 'myFont' with italic style was not found at: file:/dirpath/fonts/ArialUnicode.ttf
因此,通过一些调查确定,由于 Unicode 既不支持斜体也不支持粗体,因此当 Flex 编译器尝试嵌入字体时,它会变得不高兴,因为它无法在指定位置找到满足 css 要求的字体。
现在,当字体声明恢复为最简单的形式时:
一切编译正常,应用程序显示所有正常重量、正常样式的亚洲字符。但是,当在样式表中显示要以粗体或斜体显示的内容时,会出现一个框,表示没有嵌入字体,也没有任何系统字体可以在这些样式中呈现该字符。
现在这是变得奇怪的地方。
如果系统上安装了完全相同的 Unicode 字体,它将开始以粗体和斜体显示亚洲字符。这是没有意义的,因为当 Flex 尝试嵌入该字体以满足上述那些 css 样式时,字体中没有粗体和斜体字符。然而很明显,这种字体被用来显示粗体和斜体字符,就像在它作为系统字体安装之前它们只是框一样。这是某种 Flex 巫术吗?如果是这样,是否有某种方法可以以编程方式调用所述巫毒教,因为我不能依赖用户必须外出并在他们的系统上安装 unicode 字体。
编辑:这里有一些进一步的信息可以澄清这个问题。
我的问题实际上并不是我们如何为罗马字符设置多种字体和粗细,而是“Flex 如何将粗体和斜体应用于系统字体。当它说该字体在尝试嵌入时不支持这些字体时更是如此那个字体。”
使问题可重现的步骤如下:
- 仅将 MS Arial Unicode 嵌入到应用程序中并进行部署。
- 在新的 Windows 2003 机器上,打开 Firefox 并选择日语。
- 导航到应用程序 URL 并查看粗体和斜体应位于的框。
- 现在退出 Firefox。将 MS Arial Unicode 字体安装到 Windows 2003 系统中。
- 打开 Firefox 并重复。曾经是方框的区域现在是粗体/粗斜体/斜体日文字符。
这不是如何解决这个问题。有很多可行的解决方案。然而,我真正想知道的是 Flex 如何将粗体和斜体应用于它说不支持粗体或斜体的字体。
谢谢, C
pdf - 为什么 Acrobat Distiller 不完全嵌入所有字体?
当我使用 Acrobat Distiller (v.9.1.3) 时,我似乎无法嵌入所有字体——至少不是以我想要的方式(没有子集)。一个例子是 Wingdings (TrueType)。
我将复选框和设置激活为"Always embed"和"No subsetting"。如果我在文本编辑器中检查*.joboptions
我保存为自定义 Distiller 配置文件的文件,它会清楚地显示:
Distiller 确实完全嵌入了一些字体(按照我的要求),而另一些则没有。如果我将设置更改为进行字体子集,这适用于所有字体。因此我认为我的设置是正确的。
是否有其他人在使用 Acrobat 时遇到相同的问题/错误?
actionscript-3 - Flex/Flash 字体嵌入
我有一个 Flex 4 项目,它处于 Flex/Flash AS3 的混合状态。我在 Window 的基本组件中声明了一个样式表:
而且我所有的 Flex 组件都可以显示这种字体。样式表如下所示:
Flex 能够以给定的 subBranding 的 styleName 显示指定的字体。当我尝试在 TextFormat 对象中引用这些字体时,问题就出现了。我可以通过它们的正确字体名称(“Whitney Light”)来引用它们,只要包含文本/字体的 TextField 上的 embedFonts 未设置为 true,它就会显示出来。这可能是因为我实际上安装了字体。当我将它们称为 WhitneyLight 时:
我以 embedFonts = false 的 Times 或类似效果结束,而 embedFonts = true 则没有,因为根据 TextFormat 不存在“WhitneyLight”。然后,就 Font 对象而言,我列举了字体:
我得到的输出是:
我的理解是我的字体是嵌入的。有没有搞错?
有任何想法吗?
fonts - @font-face 是如何工作的?
我知道使用@font-face 允许浏览器下载自定义字体并在网页中使用它,就像任何系统字体一样。
我想知道的是浏览器是对字体进行编码还是在不暴露的情况下使用它?
谢谢
css - Windows 和 Mac 上的@font-face 抗锯齿
我使用http://www.fontsquirrel.com/创建了一个 @font-face 工具包。
它工作正常,但 windows 上的结果与 mac 上的结果不同。
在 Windows 上,字体似乎有错误的抗锯齿:
这是在 Mac 上使用 FF、Chrome 或 Safari(均已更新到最新版本)的结果。
这是带有 FF 或 Chrome 的 Windows 上的结果。
如您所见,结果并不相同。在 Windows 上,字体更粗更粗。
我该如何解决这个问题?
wordpress - @font-face 不能在镜像站点上工作
我在http://lifebridgecypress.org有一个 wordpress 安装站点,然后我也有http://lifebridgecypress.com,它反映了 .org 站点。如您所见,.com 站点的@font-face 规则不起作用。
有谁知道让这个工作的方法?
actionscript-3 - Flash CS5,动态字体嵌入问题
我正在尝试使用字体嵌入创建动态文本字段。嵌入是动态的,如下所示:
当我在flash CS4中编译它时,嵌入的文本出现在舞台上很好!但是,当我尝试用 flash CS5 编译它时,文本没有出现,也没有错误警告。
是什么原因?我应该使用其他方法来嵌入字体吗?!
flash - 第11个数字字形是什么?
我看到了,但没有任何意义。
第11个数字字形到底是什么?就此而言,为什么每个都有一个额外的字形?
这是 Flash CS3 专业版。
flash - AS3 Flash CS5 - 使用带有 fontDescription.fontName 的嵌入字体
我有一个具有可选变量myFont的函数。默认情况下,它设置为myFont:String="Impact"。但是,当我尝试使用该函数定义不同的字体名称,甚至只是更改默认字体名称时,我得到
TypeError:错误 #1009:无法访问空对象引用的属性或方法。
Arial 没有嵌入我的项目中的任何地方,所以我真的不明白为什么编译器对其他人如此挑剔...... :<
这是代码的 FontDescription -> ElementFormat 部分:
有什么线索吗?我已经尝试在文档类中[嵌入]字体,通过 Flash IDE 嵌入它......
actionscript-3 - Adobe Air - 带有中文字符的文本字段
我有一个需要支持中文字符的联系表。现在如果我输入中文文本没有任何显示。(甚至没有空框占位符)
如何处理 Adobe Air 动态文本字段中的汉字?
谢谢。乌里