2010-07-26 54 views
2

我有一個本地化的WPF應用程序,我需要爲每種語言環境嵌入一種字體。我有一個字體添加到我的項目中,它的Build Action設置爲Resource。如果我從.csproj中刪除<UICulture>en-US</UICulture>(這消除了附屬程序集的創建),則該字體將作爲資源編譯到項目程序集中。然後我可以通過添加字體:如何引用衛星組件中的字體資源?

<Button Content="My Button" FontFamily="Fonts/#Frutiger LT 87 ExtraBlackCn" /> 

這很好用。如果我將en-US添加到我的.csproj中,字體將被添加到本地衛星組件中。但是

<Button x:Uid="Button1" Content="My Button" FontFamily="Fonts/#Frutiger LT 87 ExtraBlackCn" /> 

不再有效。

我該如何引用本地化的字體?

回答

1

儘管這並不直接回答你的問題,在WPF Globalization and Localization Overview的MSDN頁面似乎建議您:

創建一個定製的複合字體,以獲得用於不同語言字體的更好的控制。

這個想法是,您使用單一的「複合」字體,該字體包含您可能要使用的所有語言的字體。有關複合字體的更多信息(包括示例),請參閱MSDN上的FontFamily Documentation