我的 Flex 应用程序允许人们输入文本。有多种字体可供选择。因为它是一个多语言应用程序,其中一些字体(例如中文)确实非常大 - 太大而无法嵌入所有字体。
我知道我可以在运行时通过样式表加载字体- 我计划在人们选择字体时执行此操作(在字体加载时稍等片刻不是问题)。我想要做的是再次卸载这些字体,这样如果人们选择一种字体然后另一种字体,应用程序就不会消耗大量内存。
不过,我看不出有什么办法。我可以在运行时加载字体,但不能卸载它们。有任何想法吗?
我确实在 SO 上看到了这个问题,它提到将字体加载为模块的一部分——我猜每个模块一个字体。优点是可以卸载模块。但是,正如提问者指出的那样,在模块之外无法访问该字体。所以这似乎是一个死胡同。
如果不可能,我会 - 遗憾地 - 接受一个答案,告诉我这是不可能的,但更有用的是另一种策略!这一定是人们以前遇到过的一个很常见的场景......